采用GA-BP神经网络算法改善压力传感器的稳定性

2015-01-13 03:07
化工自动化及仪表 2015年11期
关键词:权值标定染色体

袁 冬 林 勇

(合肥工业大学电气与自动化工程学院,合肥 230009)

传感器是工业信息技术中的重要组成部分,目前市面上有多种传感器,如温度传感器、压力传感器及触觉传感器等,而压力传感器是其中应用最为广泛的一种。

传感器的精确度在工业生产中也同样占据着不可忽视的地位。由于部分压力传感器是由半导体材料构成,因此具有灵敏度高及动态响应快等诸多优点;但也由于半导体的特殊性质,这种传感器容易受温度影响,产生温漂,导致传感器的稳定性和精确性降低,所以要对其进行温度补偿。目前对于压力传感器的温度补偿方法有很多,但补偿精度都不是很高[1,2]。

近年来随着人工神经网络的发展,其应用范围也越来越广泛,BP神经网络是一种具有连续传递函数的多层前馈人工神经网络,被广泛应用在各行各业中。BP神经网络可以应用在压力传感器的温度补偿模型当中,但是由于它的收敛速度慢且容易早熟,所以笔者提出了一种采用遗传算法(Genetic Algorithm,GA)优化的BP神经网络,通过调整其权值和阈值使传感器具有较好的收敛性和稳定性。

1.1 结构

BP神经网络的训练方法是误差反向传播算法,并以均方误差最小化为目标不断修改网络的权值和阈值,最终达到高精度的拟合数据。从整个框架来看BP神经网络(图1)可分为输入层、隐含层和输出层,而隐含层可以含有多层神经元。通过已取得的成果可以发现,BP神经网络只需含有3层结构就可以实现任意的非线性映射,因此笔者选择三层BP神经网络为研究对象[3]。

图1 BP神经网络结构

1.2 特点

BP神经网络具有误差逆向传播的特点。当S维指标向量通过各层神经元最终得到输出值A后,把输出值和期望值E进行对比,即可得到期望与实际输出的均方差M=∑(A-E)2/N,其中N为输入样本个数。若M小于预定要求,则进入逆向过程[4],具体流程如图2所示。

图2 BP神经网络流程

2 GA-BP神经网络

GA是通过模拟进化过程来搜索最优解的方法,是通过编码生成初始群种的一种算法,可采用GA算法来训练神经网络。具体步骤如下:

a. 当神经网络规模较大时,为了简化遗传操作,可采用实数编码方法,即把染色体的一个基因位直接用实数表示,如此便可以使染色体的长度减少,省去编码解码的繁琐。把编码串的一系列权值和阈值按照一定的顺序连接起来,形成数组,作为遗传算法的一个染色体。采用三层BP神经网络,设输入层、输出层和隐含层的神经元个数分别为i、j和k,网络隐含层和输出层对应的权值和阈值分别为W1、W2、B1、B2,可得编码长度为i×k+k×j+k+j,如此便构成了一个完整的染色体[5],最终在权值和阈值的相应范围内产生S个染色体就构成了初始种群。

c. 执行遗传操作。遗传操作的选择方法为排序,即首先把求得的评级值由小到大从1~M排列,然后通过个体评级值的大小按照评级比例的选择法计算每个染色体的选择概率,采用单点交叉和均匀变异方法,最终找出最优评级值的染色体,然后按照上述方法反复计算,直到最终满足条件为止。

d. 通过遗传运算得到评级值最优的一系列权值和阈值。

e. 执行BP神经网络。

3 GA-BP神经网络算法在压力传感器中的应用

3.1 传感器的标定数据

在实际应用中,压力传感器的输出Up与被测压力和温度呈非线性关系。隐含层有4个神经元,输出层有两个神经元。以S17-30A型压力传感器为实验对象,选取3个温度T进行压力标定,详见表1,其中Up为压力传感器输出信号,Ut为温度传感器输出,γ为电源波动,p为输入压力。

表1 压力传感器在不同温度和压力下的输入输出标定数据

通过对表1中的数据进行处理得到,传感器随温度变化的波动α=22.00%,可见温度对传感器的影响非常大,需要对其进行补偿。

3.2 建立学习样本库

由于表1中的数据比较大,而且单位不同,并且神经网络的隐含层需要采用S型函数来激活[9,10],所以需要对表1中的数据进行归一化处理,公式为:

其中,xi、xmin和xmax分别代表任意值、最小值和最大值。归一化后的数据见表2。

表2 神经网络的学习样本库

3.3 结果分析

采用Matlab语言编制训练程序,经过训练后的修正值见表3,可得被测压力p(kPa)的最大相对波动α′=1.21%。

表3 被测压力的修正值

采用GA-BP神经网络的补偿结果见表4,可得被测压力p(kPa)的最大相对波动α″=0.84%。

表4 被测压力GA-BP神经网络补偿结果

通过上述计算得到了原始标定、BP神经网络算法补偿后和GA-BP神经网络算法补偿后的最大相对波动值分别为22.00%、1.21%和0.84%。可见,通过BP神经网络算法补偿后的压力传感器其工作稳定性有显著提高;而采用GA-BP神经网络算法补偿后的压力传感器,其稳定性得到了进一步升华,并且GA-BP神经网络算法的收敛次数明显减少,时间缩短了近2/3。

4 结束语

由于部分压力传感器受半导体材料的限制,使得其在实际应用过程中很容易产生温漂,影响了测量精确度和稳定性,所以有必要对其进行温度补偿,而通常的温度补偿方法不仅收敛速度慢而且成本也比较高。在此,笔者以S17-30A型压力传感器为标定样本,将BP神经网络和GA算法结合,并把结合后的GA-BP神经网络算法应用于标定过程,取得了良好的效果,压力传感器运行稳定,波动较小。证实GA-BP神经网络算法对压力传感器有着很好的温度补偿效果,提高了其测量精确度。

[1] 王晓荣,伦淑娴.基于改进粒子群算法的BP神经网络优化研究[J].渤海大学学报(自然科学版),2008,29(2):189~193.

[2] Pramanik C,Islam T,Saha H.Temperature Compensation of Piezoresistive Micro-machined Porous Silicon Pressure Sensor by ANN[J].Microelectronics Reliability,2006,46(2-4):343~351.

[3] 徐科军.传感器与检测技术[M].北京:电子工业出版社,2011:46~51.

[4] 张荷芳,薛静云.压力传感器温度补偿的BP神经网络算法[J].西安工业大学学报,2013,33(2):163~167.

[5] 张丽平.粒子群优化算法的理论及实践[D].杭州:浙江大学,2005.

[6] Angeline P J.Evolutionary Optimization Versus Particle Swarm Optimization:Philosophy and Performance Differences[C].Evolutionary Programming VII.San Diego:Springer Berlin Heidelberg,1998:601~610.

[7] 杨德旭.基于BP神经网络传感器温度补偿技术的研究[D].沈阳:东北大学,2006.

[8] 钱光耀,杨入超,赵光兴.基于人工神经网络的压力传感器三维数据融合[J].传感器与微系统,2007,26(2):79~81.

[9] 张耀锋,孙以材,邢晓辉.基于人工神经网络的压力传感器的温度补偿[J].电子学报,2008,36(2):358~361.

[10] 刘洪波,王秀坤,孟军.神经网络基于粒子群优化的学习算法研究[J].小型微型计算机系统,2005,26(4):638~640.

猜你喜欢
权值标定染色体
一种融合时间权值和用户行为序列的电影推荐模型
CONTENTS
使用朗仁H6 Pro标定北汽绅宝转向角传感器
多一条X染色体,寿命会更长
为什么男性要有一条X染色体?
基于匀速率26位置法的iIMU-FSAS光纤陀螺仪标定
基于权值动量的RBM加速学习算法研究
基于多维度特征权值动态更新的用户推荐模型研究
船载高精度星敏感器安装角的标定
能忍的人寿命长