APP下载

基于改进BP神经网络的航空液压油软测量

2016-11-17虞文胜

计算机测量与控制 2016年3期
关键词:液压油杂质航空

虞文胜

(海军装备部航空技术保障部,北京 100084)



基于改进BP神经网络的航空液压油软测量

虞文胜

(海军装备部航空技术保障部,北京 100084)

BP 神经网络越来越多地被应用于软测量建模中,与传统方法相比,BP神经网络进行信息处理可以减少数据的分析和建模工作,但也存在易于陷入局部最小值和初始权值随机选取的缺陷问题;为了解决传统BP神经网络存在的缺陷,文中在数据预处理过程中引入主成分分析法(PCA),在BP网络输入权值时引入遗传算法(GA),最终达到弥补BP神经网络缺陷的目的;详细介绍了改进算法的流程与步骤,将改进的BP神经网络应用于航空液压油的软测量,先是对航空液压油软测量参数进行分析,包括辅助变量的选择和数据预处理,然后进行基于改进型BP神经网络的建模与仿真实验;实验结果表明,基于改进BP神经网络的航空液压油软测量效果优于传统神经网络,具有更强的泛化能力,因此可进行更广泛的应用。

软测量;BP神经网络;PCA;GA

0 引言

据国内外统计资料显示,在高新武器装备液压系统的故障中,近70%是因液压系统污染而引起的,而其中固体颗粒污染物所引起的液压系统故障数占总污染故障数的60%~70%。只有迅速精确地检测出油液中的机械杂质,才能及时采取相应的防护措施。而一般来说,直接检测油液中的机械杂质颗粒比较困难,要精确检测就更不理想了。

软测量技术包括辅助变量选择、数据采集与处理、软测量建模等组成部分,仅需检测一些易测变量,将其作为辅助变量,通过构成相应的数学关系进行估计或者推断,再通过软件实现硬件的功能,不需要太多时间和资金的投入即可实现,且可以实施在线校正。在航空液压油的检测系统中应用软测量技术,不仅能及时监测油液质量,能及时发现不达标的油液,防止因机械杂质含量过高而引起的严重问题,又可节约投资和运行成本。

1 基于PCA的GA-BP改进网络

针对BP神经网络中易陷入局部最小和初始权值随机选取的问题,将主成分分析法(principal component analysis)和遗传算法(genetic algorithms)引入网络,让这几种方法实现优势互补,在经典BP神经网络的基础上,构建一个基于PCA的GA-BP改进网络,以增强模型的泛化能力,使BP网络具有更广泛的应用。

主成分分析法是一种将多个相关变量转化为少数几个独立变量的方法,它的最终目的在于用最少的变量来概括样本中的信息。在数据预处理中引入主元分析法,能减少BP网络输入变量的个数,从而优化网络结构,使网络具有更快的收敛速度[1]。利用遗传算法优化BP网络的初始权值,可以使网络在训练过程有效避免陷入局部最小[2]。基于PCA的GA-BP神经网络改进算法的流程大致分为三步,第一步主成分分析,第二步遗传算法,第三步使用优化的输入变量和初始权值开始训练网络[3],具体过程如图1所示。

图1 基于PCA的GA-BP神经网络改进算法流程

2 航空液压油参数选择与原始数据预处理

2.1 参数选择

首先进行辅助变量的选择,航空液压油的检测过程中,选择如下几个与机械杂质含量有关的变量。

1)酸值:

单位mgKOH/g,是中和1g石油产品中酸性物质所需的氢氧化钾质量(毫克数),用来表示液压油、润滑油等油液中无机酸和有机酸的总含量。航空液压油酸值的测定执行GB/T264-83标准。

2)运动粘度:

单位mm2/s,航空液压油的粘度指液体的内摩擦,是液压油由于受外力作用而发生相对移动时,油分子之间所产生的阻力,该阻力的大小称为粘度。粘度又分为运动粘度、动力粘度和条件粘度。其中运动粘度使用最广泛。液压油50 ℃运动粘度是指在温度50 ℃时,动力粘度与同温度下油密度的比值,亦即v=η/ρ。液压油50℃运动粘度测定按GB/T 265_88的标准进行。

3)运动粘度变化率:

该变化率为航空液压油运动粘度在单位时间内的变化量。

4)水分(百分含量):

水分含量指标测定按GB/T 11193-89标准规定方法进行,测定水含量的范围从1%到90%(质量分数),该方法适用于测定轻质石油产品的水含量。

5)金属元素含量:

在航空液压油内包括铝、铬、铜、铁、镍以及硅元素含量。金属元素含量直接影响到油液中固体颗粒数量,即影响到机械杂质的含量。可通过原子发射光谱法测量各元素的含量。

6)粒径范围:

按QJ2724.5-95《航天液压污染控制-测定工作液固体颗粒污染的自动颗粒计数仪计数法》进行测量。液压系统中污染物的存在将破坏厚度小于固体颗粒尺寸0.6倍的润滑油膜而使其失效,从而加剧元件磨损,加速密封件磨损。测量最终结果为每毫升油样含有某种尺寸颗粒的数量,通过ISO4406的污染等级确定与表示污染度等级。

7)机械杂质:

机械杂质含量从质量方面表征液压油固体颗粒杂质的污染程度,按GB/T 511《石油产品和添加剂机械杂质测定法》测定,该标准规定了用重量法测定机械杂质的方法。

2.2 数据预处理

选取某航空液压油的实测数据,进行预处理,采用3σ准则法,剔除实测数据中异常数据得到为14×20的数组。利用MATLAB语言实现过程如下:

clc

format long g

[filename pathname index]=

uigetfile({'AAA.xls'},'选择文件');

file=[pathname filename];

data= xlsread(file);%调入原始数据

e=ones(17,1);

%生成元 素全为1的矩阵

mu=mean(data);%求平均值

sigma=std(data);%计算标准差

outliers=abs(data-e*mu)>3*e*sigma

%求出异常值的位置

v=[];

for i=1:1:17

for j=1:1:20

if outliers(i,j)==1

data(i,:)=0;

v=[v i];

end

end

end

data(v,:)=[] %显示处理后数据

%将预处理数据以矩阵形式存入TXT文件中

format long g

fid=fopen('data.txt','wt');

%写入文件路径

[m,n]=size(data);

for i=1:1:m

for j=1:1:n

if j==n

fprintf(fid,'%g/n',data(i,j));

else

fprintf(fid,'%g/t',data(i,j));

end

end

end

fclose(fid);

3 基于改进BP网络的建模与仿真

3.1 主成分分析

对预处理后所得数据中19个变量进行主成分分析,利用MATLAB进行主成分分析过程编码,先求得相关矩阵R,然后求相关矩阵的特征值,并分析它们各自的贡献率。部分程序代码如下:

Cwstda.m;%用综合标准化矩阵

function stda=cwstda(vector)

cwsumr=sum(vector,1);

[a,b]=size(vector);

%矩阵行数为a,列数为b

for i=1:a

for j=1:b

stda(i,j)=vector(i,j)/cwsumr(j);

end

end

Cwfacr.m,%相关系数矩阵计算

function result=cwfacr(vector)

fprintf('相关矩阵系数为:/n')

stda=CORRCOEF(vector)

fprintf('特征向量(vec)及特征值(val)分别为:/n')

[vec,val]=eig(stda);

newval=diag(val);

[y,i]=sort(newval);

fprintf('进行特征根排序:/n')

for z=1:length(y)

newy(z)=y(length(y)+1-z);

end

fprintf('%g/n',newy)

rate=y/sum(y);

fprintf('/n贡献率为:/n')

newrate=newy/sum(newy)

sumrate=0;

newi=[];

for k=length(y):-1:1

sumrate=sumrate+rate(k);

newi(length(y)+1-k)=i(k);

if sumrate>0.85

break;

end

end

fprintf('主成分数为:%g/n',length(newi));

fprintf('主成分载荷为:/n')

for p=1:length(newi)

for q=1:length(y)

result(q,p)=sqrt(newval(newi(p)))*

vec(q,newi(p));

end

end

disp(result)

end

Cwscore.m;

%计算各主成分得分与综合得分并排序

function score=cwscore(vector1,vector2);

sco=vector1*vector2;

csum=sum(sco,2);

[newcsum,i]=sort(-1*csum);

[newi,j]=sort(i);

fprintf('计算得分结果:/n')

score=[sco,csum,j]

end

经MATLAB主成分分析的结果见表1。

表1 相关矩阵特征值及其贡献率

一般要求累计贡献率达到80%~90%即可,从表中可看出,前10个特征根的累积贡献率达到88.38%,选取前10个主成分进行综合评价。求出前10个特征根对应的特征向量,就可得到10个主成分,用这10个主成分代替原来的19个变量作为网络的输入变量。

3.2 遗传算法

网络训练仍然采用批处理的训练方式进行,将全部实验数据作为训练样本进行网络训练。神经网络结构为10-20-1-

1,隐含层传递函数为“tansig”,输出层传递函数为“purelin”。

将遗传算法的编码精度设为eps=1e-6。在GA种群规模和遗传代数的选择上,如果设置过小,会使所得解达不到预期精度,如果设置过大,会导致冗余现象,增加了网络的训练负担[4]。因此进行多次仿真实验,最终选定GA的初始种群个数为popu=50,遗传代数GEN=100。按照图1所示的流程开发仿真程序,目标函数定义为gabpEval。程序代码如下:

R=size(P,1);

S1=25;%计算隐含层节点数

S2=size(T,1);

S=R*S1+S1*S2+S1+S2;

%计算遗传算法编码长度

Lena=ones(S,1)*[-1,1];

popu=50;%种群规模设定

initPpp=initializega(popu,Lena,'gabpEval');

%种群初始化

gen=100;%遗传代数设定

%调用GAOT工具箱,gabpEval为定义的目标函数

[x,endPop,bPop,trace]=ga(Lena,'gabpEval',[],initPpp,[1e-6 1 1],'maxGenTerm',gen,...

'normGeomSelect',[0.09],['arithXover'],[2],'nonUnifMutation',[2 gen 3]);

染色体的平均适应度在训练过程在2次迭代之后,基本趋于稳定,得到最优的初始权值。

3.3 仿真实验及其结果

创建BP网络,将遗传算法优化得到的初始权值带入网络,以主成分分析得到的10个主成分为输入变量,设定训练误差目标为1e-5,最大迭代次数为900,学习速率为0.05。训练过程如图2所示。

图2 训练过程中网络误差的变化

从图2可以看到,网络训练经过4次迭代,就达到了设定的目标要求。因此可见网络较好的克服了局部最小问题,误差曲线没有出现水平段,变化较快。接下来对训练后的网络进行仿真,并计算相对误差,如图3所示。

图3 改进BP神经网络的训练结果

通过观察图3可以看出,预测输出与期望输出非常接近,拟合效果较好,此遗传神经网络具有较好的数据拟合能力。

由图3可以得出,遗传BP神经网络预测值的相对误差在-0.000 4~0.000 05这个区间,有效地提高了预测精确度。遗传BP神经网络方法对同一动态测量数据的预测效果明显好于经典BP神经网络的预测效果,证明了遗传BP神经网络在动态测量数据预测方面的优越性。

4 软件设计

编程工具软件为Matlab,进行基于改进型BP神经网络的航空液压油参数软测量的软件设计。

软件功能分为网络训练和机械杂质含量测量两部分。

1)网络训练模块:

网络训练模块功能包括设定网络参数、对网络进行训练及查看训练效果。

训练效果即为将网络训练结束后所得的结果绘制成图,以图形方式直观地让大家看到网络训练是否满足要求。图形共有3种,分别是期望输出与网络输出、网络预测值的相对误差曲线和适应值曲线。

2)机械杂质含量测量模块:

机械杂质含量测量模块主要有数据的输入和运用网络进行软测量并显示结果的功能。

数据的输入。将有效的数据输入对应变量中,以便下一步进行机械杂质含量测量。

机械杂质含量测量。将刚输入的数据,带入前面训练好的网络,就可得到与输入数据对应的机械杂质含量。

5 结论

论文首先对航空液压油软测量参数进行分析,包括辅助变量的选择和数据预处理;然后进行基于改进型BP神经网络的建模与仿真实验,对实验结果表明改进后的网络应用于航空液压油软测量能达到较好的测量效果。

[1] 龚 纯,王正林.精通MATLAB最优化计算[M].北京:电子工业出版社,2009.

[2] 黄 勤,刘衍鹏,刘益良,等.基于PCA的GA-BP神经网络入侵检测方法[J].计算机应用研究,26(12),2009:4755-4756.

[3] 龚 纯,王正林.MATLAB语言常用算法程序集[M].北京:电子工业出版社,2011.

[4] Fu Lian Dong D, Chen Kui Sheng, Yu Jun Sheng, et.al.The Fault Diagnosis for lectro-Hydraulic Servo Valve Based on the Improved Genetic Neural Network Algorithm[A]. Machine Learning and Cybernetics, 2006 International Conference on [C].Aug, 2006:2995-2999.

Aircraft Hydraulic Fluids Soft Measurement Based on Improved sBP Neural Network

Yu Wensheng

(Navy Equipment Department Aviation Technical Support Division, Beijing 100084, China)

The BP neural network is increasingly used in the soft measurement modeling, compared with the traditional method, the BP neural network information processing can reduce the data analysis and modeling work, but there are also easy to fall into local minimum and the initial weights randomly selected defects. In order to solve the defects of traditional BP neural network, the thesis introduced in the process of data preprocessing, principal component analysis (PCA), when the input of the BP network weights is introduced into the genetic algorithm (GA), and finally achieve the purpose of make up for the BP neural network defects; Introduces in detail the process and steps of improved algorithm, the improved BP neural network was applied to the soft measurement of the aircraft hydraulic fluids detection, first analyze the aviation aircraft hydraulic fluids soft measurement parameters, including the selection of auxiliary variables and data preprocessing, and then based on the improved BP neural network modeling and simulation experiments. The experimental results show that the improved BP neural network model of the generalization ability is stronger, more widely, can achieve better measuring result, which make the BP neural Network can be used even more widely.

soft measurement; BP neural network; PCA;GA

2015-08-27;

2015-10-30。

虞文胜(1968-),男,安徽合肥人,高级工程师,工学学士,主要从事航空装备检测方向的研究。

1671-4598(2016)03-0021-04

10.16526/j.cnki.11-4762/tp.2016.03.007

TP15

A

猜你喜欢

液压油杂质航空
液压挖掘机液压油箱内泄原因分析及改进方法
环境可接受液压油性能要求及开发意义
“闪电航空”来啦
“闪电航空”来啦
剔除金石气中的杂质,保留纯粹的阳刚之气
二则
在细节处生出智慧之花
达美航空的重生之路
粗盐中难溶性杂质的去除
安装螺旋桨用液压油顶结构的改进