基于混沌人工鱼群优化粗糙集的制导弹药故障诊断

2017-09-25 01:00马长刚
舰船电子对抗 2017年4期
关键词:约简粗糙集鱼群

马长刚,李 青,陈 明

(空军勤务学院航空弹药系,江苏 徐州 221000)

基于混沌人工鱼群优化粗糙集的制导弹药故障诊断

马长刚,李 青,陈 明

(空军勤务学院航空弹药系,江苏 徐州 221000)

利用粗糙集进行制导弹药故障诊断时,决策表中连续属性离散化区间分割不合理,导致故障诊断误诊率较高。基于此,提出了一种利用混沌人工鱼群算法优化粗糙集决策表离散化的方法,然后根据离散化结果进行属性约简,提取了故障诊断规则表,有效地简化了故障诊断。通过实例证明,与传统的将人工鱼群和粗糙集理论相结合的故障诊断方法相比,该方法更简便、更有效。

混沌人工鱼群;粗糙集理论;属性约简;故障诊断

0 引 言

航空制导弹药功能结构复杂多样,电子元器件较多,且大多都是精密元器件,使得制导弹药故障产生机理异常复杂,给故障诊断带来很大的困难。在利用粗糙理论对弹药数据进行处理进而进行故障诊断的过程中,存在测试数据量庞大、属性约简困难、连续属性离散化导致诊断不准确的问题。

粗糙集理论在1982年由波兰科学家Z.Pawlak创立,是一种用于知识表达和数据挖掘的工具,它可以将知识以决策表的形式展现出来,并通过规定的约简算法实现知识的分类、整理和数据挖掘[1]。

人工鱼群算法是一种模仿鱼群行为方式的随机搜索优化算法,采用自上而下的设计方法,主要利用鱼群觅食、群聚追尾等行为,从构造单条鱼的行为做起,通过鱼群中个体的局部寻优求得全局最优的目的[2]。

本文基于制导弹药内部某电子部件的测试数据,将混沌人工鱼群算法和粗糙集理论结合起来,应用于航空制导弹药的故障诊断。以决策表中属性的分类质量为优化目标,利用混沌运动的遍历性改进传统人工鱼群来实现对决策表测试数据集中各属性的离散化,进而对其进行约简,并采用启发式的约简算法提取了故障诊断规则表来简化故障诊断。

1 粗糙集理论

1.1 连续属性离散化

定义:信息系统S=(U,A,V,f)。其中论域U={x1,x2,…,xn}是非空的有限元素集合,xi(1≤i≤n)称为对象;属性集合A={a1,a2,…,an}也是非空的有限集,ai(1≤i≤n)称为属性,V是属性值的集合,Va是属性a的值域。又因A=C∪D,C称为条件属性,D是决策属性,f为U×A→V的映射,它指定了U中每一个对象x的属性值。

(1)

离散化的本质就是利用选取的断点来对条件属性构成的空间进行划分,把这m维条件属性空间划分成有限个区域,使得每个区域中的对象的决策值相同[4]。

1.2 属性约简

定义1:R是由对象属性集合A确定的等价关系,若P⊆R,且P≠O,则P中的全部等价关系的交集称为P上的不可分辨关系,记作iind(P)[3]:

(2)

定义2:对于一给定的决策系统S=(U,A,V,f),条件属性集合C的约简是C的一个非空子集P,如果它满足:∀a∈P,a都是D不可省略的,而且PP(D)=PC(D),则称P是C的一个约简,C中所有约简的集合记作rred(C)。

定义3:条件属性C中不可省略属性的集合成为C的核,记作ccore(C):

ccore(C)=∩rred(C)

(3)

定义4:决策属性D对条件属性C的依赖度[2]为:

(4)

PC(D)是等价类U/D关于C正域,γC(D)表达了决策属性对条件属性的依赖程度,是衡量数据分类能力的一个重要指标,本文就是利用它来作为人工鱼行为选择和决定区间合并与否的一个判断依据。

2 混沌人工鱼群

人工鱼群算法是一种群智能随机搜索优化算法,其基本思想是模拟鱼类的觅食行为、追尾行为和群聚行为等,通过每条人工鱼的局部寻优达到全局寻优[5]。人工鱼群算法具有对初始值和参数设置要求不高、收敛速度快和全局收敛性好等优点,但往往由于固定步长和随机行为的存在,当人工鱼接近最优点时,收敛速度会下降并且很难得到精确的最优解[6],因此为克服上面提到的人工鱼群算法的不足之处,本文结合混沌运动的遍历性、随机性、确定性等特征,并引入反馈策略来改进传统的人工鱼群算法,以提高人工鱼群算法在对连续属性离散化过程中的收敛精度和收敛速度。

2.1 人工鱼基本行为描述

假设n条人工鱼当前的状态为X=(x1,x2,…,xi,xn)其中xi(i=1,2,…,n)为寻优变量,人工鱼总数为n,SStep是人工鱼移动的最大步长,VVisual是人工鱼视野,NTry为尝试次数,δ是拥挤度因子,任意2条人工鱼i、j之间的距离为dij=|Xi-Xj|,f(x)表示人工鱼当前食物浓度。除此之外,设置公告牌用来记录最优人工鱼个体的状态Xbest表示的位置,每次人工鱼行动完后,将当前自身状态与公告牌状态进行比较,如果当前状态优于公告牌状态,立即更新公告牌状态,反之不变。

(1) 随机行为

随机行为比较简单,就是在人工鱼视野范围内随机选择一个状态,朝着这个随机选择的状态移动,设人工鱼i当前状态为Xi,在其视野范围VVisual内随机选择一个状态Xj。

(2) 觅食行为

觅食行为是人工鱼向食物逐渐增多的方向快速游去的一种行为,即趋向较优适应度。设当前人工鱼i当前状态为Xi,在其感知范围内随机选择一个状态Xj,Xj=Xi+VVisual·R(),其中R()为随机数,在其感知范围内分别计算2个状态下的食物浓度,如果f(Xj)>f(Xi),则向状态Xj的方向前进一步[4]:

(5)

反之,再重新选择状态Xj,判断是否满足前进条件,反复尝试NTry后,若还不满足前进条件,则随机移动一步进入下一个状态:

(6)

(3) 群聚行为

人工鱼的群聚是模拟自然界中鱼在游动过程中为保证群体的生存和躲避危害会自然地群聚的行为。设人工鱼i当前状态为Xi,先探索当前视野范围内的伙伴数目nf和中心位置Xc。若伙伴中心有较多食物且不太拥挤(即Yc/nf>δYi),则朝着伙伴的中心位置前进一步:

(7)

否则执行觅食行为。

(4) 追尾行为

追尾行为是指在鱼群游动过程中,当其中部分鱼发现食物时,其邻近的伙伴会尾随其快速寻得食物。设人工鱼i当前状态为Xi,先探索当前视野范围内的伙伴中f(Xj)最优的伙伴Xj。若Yj/nf>δYi,则该伙伴的状态具有较高的食物浓度并且周围不太拥挤,则朝Xi的方向前进一步:

(8)

否则执行觅食行为。

2.2 混沌搜索

混沌现象是非线性动力学系统中特有的一种现象,存在于绝大多数非线性系统中。混沌现象是不含外加随机因素的完全确定性系统所表现出介于规则和随机之间的一种随机行为[7]。由于其具有遍历性,因此加入混沌搜索的人工鱼群算法能够避免人工鱼长时间待在一个局部最优值附近,从而提高算法的全局收敛性和寻优效率。

假设当前人工鱼i的状态为Xi,则混沌搜索的步骤如下:

(2) 由(1)中产生的CXi(k),利用混沌映射函数CXi+1(k)=μ·CXi(k)·[1-CXi(k)]求出CXi+1(k),μ为混沌控制参数。

(3) 根据(1)推导可知,Xi+1(k)=Xmin+CXi+1(k)(Xmax-Xmin),可求得下一状态Xi+1(k)。

(4) 计算状态Xi+1下的食物浓度,若状态优于公告牌最优状态,更新公告牌,否则令k=k+1,返回(2)。

2.3 基于混沌人工鱼群的连续属性离散化

所谓连续属性离散化就是在特定的连续属性的值域范围内设定若干个离散化划分点,将属性的值域范围划分成一些离散化区间。在利用粗糙集理论进行故障诊断决策时,如果对条件属性分得较细,会降低粗糙集属性约简效率,如果划分得较粗放,可能会导致决策表中不相容信息的增加,使离散化后的结果不能反映实际情况[7-8]。因此,基于上述人工鱼基本行为模型的描述以及混沌搜索等的相关定义,来实现对粗糙集中条件属性的离散化。

本文用离散化后的粗糙集的分类质量作为混沌人工鱼群算法的寻优函数(具体在定义4中已解释),在保持各条件属性对决策属性的支持度不变的前提下,依次对每个属性进行离散化。具体算法步骤[9-10]如下:

步骤1:初始化参数。设定人工鱼群的基本参数,包括人工鱼群的个体数量n,每条人工鱼的初始位置、最大移动步长SStep,人工鱼视野VVisual,尝试次数NTry,拥挤度因子δ、混沌控制参数μ,并在属性值值域范围内初始化属性分割区间。

步骤2:将第i(i=1,2,…,n)个条件属性Ci与决策属性D输入到人工鱼群算法中,根据人工鱼当前状态进行区间离散,再用粗糙集理论计算当前条件属性Ci对决策属性D的支持度γCi(D),重复多次迭代找到γCi(D)的最大稳定值,实现对相邻区间的有效合并,得到尽可能少的离散化断点[11]。

步骤3:若i

步骤4:记录当前各人工鱼状态,根据当前状态确定离散区间,再利用粗糙集理论进行属性约简[12]。

3 故障诊断实例

故障现象是与航空制导弹药结构密切相关的,故障的发生往往是由多个原因造成的,目前对制导弹药故障特性进行研究通常是根据弹药的测试数据进行的。本文只针对制导弹药某关键部位故障进行诊断,利用上述混沌人工鱼群优化后的粗糙集理论来对各属性测试数据进行离散化,提高属性约简的效率和约简质量,促进故障诊断能力[13]。

本例中,以航空制导弹药电子部件P为研究对象,将故障序号作为论域,该电子部件发生故障的所有故障原因(即特征数据)作为条件属性C,决策属性D即为故障现象,建立航空制导弹药某电子部件故障诊断决策表,如表1所示。

表1 原始故障诊断决策表

表1中:C1、C4单位为Hz;C2、C3单位为mV。

表1有30组测试数据,其中包括18组正常数据,12组故障数据通过决策表的离散化、属性约简得到简化的诊断规则,实现故障诊断。这里将影响该部件健康性能的4个属性C1~C4的属性值作为粗糙集故障分类的条件属性集合C的元素,选择故障与健康作为决策属性元素的集合D。

基于上述所建决策表,采用本文提出的基于混沌人工鱼群优化的离散化方法对故障决策表各条件属性进行离散化,借助MATLAB编写了混沌人工鱼算法各个行为选择函数、目标函数以及主函数的M文件,算法基本参数设置为:人工鱼总数n=100,人工鱼移动的最大步长SStep=1.3,人工鱼视野VVisual=2,尝试次数NTry=10,拥挤度因子δ=0.3,混沌控制参数μ=2.8,由此得到离散化后的决策表,如表2所示。

表2 离散化后故障诊断决策表

表2中第5列中0代表正常,1代表故障(其他同)。

参考基于属性重要性的启发式约简方法[9],由MATLAB编写的粗糙集规则提取程序可知,约简属性为{C1,C2,C3},有效删除了冗余属性C4。整理分析约简后的的决策表,合并吸收相同规则,删除冗余的规则,最终得到的故障规则如表3所示。

表3 故障规则表

为了验证最终提取出来的故障诊断规则表的可信度,另收集到3组航空制导弹药电子部件P的相关历史测试数据以及真实故障诊断结果,如表4所示。利用本文提出的方法进行故障诊断,首先建立原始决策表,然后将原始决策表根据前面提出的离散化方法进行离散化,然后采用上面提取出的诊断规则表进行故障诊断。第1组数据符合规则2(3 --)和规则4(--1),诊断结果为故障;同样第2组数据不符合上面故障规则,诊断结果为正常,第3组数据符合故障规则5(--3),诊断结果为故障。3组结果与真实情况完全相符,更加证明了本文提取出来的的故障规则的有效性。

表4 验证测试数据以及真实故障诊断结果

4 结束语

本文考虑到传统人工鱼群算法在离散化粗糙集决策表中的数据时最优值精确度不高,无法遍历所有状态的特点,利用混沌搜索将其改进,克服不足,在保证离散化后的决策表的分类质量的基础上,使得约简结果更为精简,证明了方法的可靠性和有效性。同时结合航空制导弹药某电子部件真实的历史故障诊断数据,利用粗糙集属性约简算法提取了该电子部件的故障诊断规则,验证结果表明,本文提取出的故障诊断规则能更有效地解决该部件故障诊断问题,同时可以在此基础上推广到整弹的故障诊断,为其故障规则提取奠定了基础。

[1] 李青,马长刚,辛明睿.基于粗糙集理论的装备故障数据处理方法研究[C]//中国计算机自动测量与控制技术协会:第二十五届测试与故障诊断技术研讨会,南京,2016:201-205.

[2] 付波,黄英伟.改进人工鱼群优化粗糙集的水电机组故障诊断[J].湖北工业大学学报,2012,27(1):92-95.

[3] 吴明芬,许勇,刘志明.一种基于属性重要性的启发式约简算法[J].小型微型计算机系统,2007,28(8):1452-1455.

[4] 江铭炎,袁东风.人工鱼群算法及其应用[M].北京:科学出版社,2012.

[5] 苏锦旗,吴慧欣,薛惠锋.基于人工鱼群算法的聚类挖掘[J].计算机仿真,2009,26(2):147-150.

[6] 侯剑,刘方爱,冷严,等.一种新的人工鱼群协同优化算法[J].计算机仿真,2015,32(9):267-270.

[7] 王静云,常安定,郭建青,等.基于混沌人工鱼群混合算法确定含水层参数[J].中国农村水利水电,2013(3):27-29.

[8] 苏锦旗,吴慧欣,薛惠锋.基于人工鱼群算法的聚类挖掘[J].计算机仿真,2009,26(2):147-150.

[9] 常红岩,蒙祖强.一种新的决策粗糙集启发式属性约简算法[J].计算机科学,2016,43(6):218-222.

[10] 姚卫红,方仁孝,张旭东.基于混合人工鱼群优化 SVR 的交通流量预测[J].大连理工大学学报,2015(6):632-637.

[11] 李小培,张洪伟,邹书蓉.一种改进的人工鱼群聚类算法[J].成都信息工程学院学报,2014,29(5):485-490.

[12] 刘洪波,郑博一,蒋博龄.基于人工鱼群神经网络的城市时用水量预测方法[J].天津大学学报,2015(4):373-378.

[13] 罗周晟,周少武.基于人工鱼群的OIF-Elman神经网络在电机故障诊断中的应用[J].产业与科技论坛,2014(4):52-53.

FaultDiagnosisforGuidedAmmunitionBasedonTheMethodChaoticArtificialFishSwarmAlgorithmOptimizingRoughSetTheory

MA Chang-gang,LI Qing,CHEN Ming

(Department of Aviation ammunition Air Force Logistics College,Xuzhou 221000,China)

The error rate of fault diagnosis is higher because the discrete interval partitioning with continuous attributes in decision tables is not reasonable when the rough set theory is used to diagnose the faults of guided ammunition.This paper puts forward a kind method to optimize decision tables discretization of rough set by using chaotic artificial fish swarm algorithm,then realizes the attribute reduction according to discretization result,and extracts the fault diagnosis rule table,which effectively simplifies the fault diagnosis.Finally,an example is used to validate:compared with traditional fault diagnosis method combining artificial fish swarm and rough set theory,the proposed algorithm is simpler and more effective.

chaotic artificial fish swarm algorithm;rough set theory;attribute reduction;fault diagnosis

E927

:A

:CN32-1413(2017)04-0071-05

10.16426/j.cnki.jcdzdk.2017.04.018

2017-03-23

猜你喜欢
约简粗糙集鱼群
基于隶属函数的模糊覆盖粗糙集新模型
局部双量化模糊粗糙集
变精度多粒度粗糙集的信任结构
面向连续参数的多粒度属性约简方法研究
基于差别矩阵的区间值决策系统β分布约简
带权决策表的变精度约简算法
多粒度犹豫模糊粗糙集*
人工鱼群算法在雷达探测器射频端电路设计中的应用
近似边界精度信息熵的属性约简
鱼群漩涡