基于AABC-BP算法的红外气体传感器温度补偿

基于AABC-BP算法的红外气体传感器温度补偿
李成兵;毛熙皓
【摘 要】标准人工蜂算法在运算过程中容易随着迭代次数增加丢失优质解,从而降低解的稳定性.已有研究表明引入自适应人工蜂优化算法可以提高算法稳定性.针对红外气体传感器在工作时环境温度对测量精度影响较大的问题,提出一种基于自适应人工蜂-BP人工神经网络(AABC-BP)温度补偿方法.利用自适应人工蜂算法对BP神经网络的阈值和权值进行优化,构造出红外气体传感器温度补偿模型,并将其应用于温度补偿实验研究中.实验结果表明:(AABC-BP)算法可有效提高BP神经网络的收敛速度和计算精度;基于(AABC-BP)混合算法的红外气体传感器温度补偿模型,可以将其温度补偿精度误差控制在5%以内.
【期刊名称】《传感技术学报》
【年(卷),期】2018(031)010
【总页数】6页(P1472-1477)
【关键词】红外气体传感器;温度补偿;自适应人工蜂;BP神经网络;参数优化
【作 者】李成兵;毛熙皓
【作者单位】西南石油大学机电工程学院,成都610500;西南石油大学机电工程学院,成都610500
【正文语种】中 文
【中图分类】TP212
目前,红外气体传感器与电化学气体传感器、催化燃烧式气体传感器、电化学气体传感器以及二氧化物半导体气体传感器相比,红外气体传感器具有探测范围广,选择性好,不容易受有毒有害气体的影响而中毒、老化,响应速度快等优势,红外气体传感器已经成为当前气体传感器的研究热点之一[1-2]。红外气体传感器是基于红外吸收光谱原理利用气体吸收特定红外光光谱来实现对气体的浓度检测,可探测甲烷(CH4)、氯化氢(HCL)、一氧化碳(CO)、硫化氢(H2S)等气体,已经广泛应用于煤矿、化工等领域的有毒有害气体检测[3-7]。安塞县高级中学
红外气体传感器在工作时容易受到温度影响,因为气体分子吸收特性其吸收系数与温度有关,电子元件、光学元件等均会受温度影响而发生变化导致测试精度和稳定性降低[8],对红外气
体传感器进行温度补偿是十分重要的。常用传感器温度补偿方法分为硬件补偿和软件补偿两种,硬件补偿是通过硬件电路降低温度对测试结果的影响,软件补偿则是利用算法对数据进行融合,文献[9]利用最小二乘曲线拟合法建立温度补偿模型,文献[10]利用BP神经网络建立温度补偿模型,文献[11]利用RBF径向神经网络建立温度补偿模型。
BP神经网络BP(Back Propagation neural network)是常用的传感器温度补偿方法,BP神经网络依靠不断的误差反向传播修改输入层至隐含层、隐含层至输出层的阈值和权值,通过修改后的权值和阈值降低神经网络的输出误差,但是不断的反向传播造成了BP神经网络运算速度慢、训练次数多且精度不高的缺点。近年来,针对BP神经网络收敛慢、精度不高的缺点,提出了多种混合算法来提高BP神经网络的运算速度和精度,文献[12]利用遗传算法建立优化模型,文献[10]利用粒子算法建立优化模型、文献[13]利用主成分分析法建立优化模型,上述混合算法对BP神经网络的运算能力均能产生一定的提升作用,本文提出一种基于自适应人工蜂算法AABC(Adaptive Artificial Bee Colony)对BP神经网络进行参数优化的方案,利用AABC强大的全局搜索功能、收敛速度快、精度高和稳定性良好的优点对BP神经网络的阈值和权值进行优化,优化后的BP神经网络拥有更好的跳出局部收敛能力、良好的稳定性和高精度,使用优化后的BP神经网络对红外气体传感器进行温度补偿,提高补偿精度和稳
定性。
1 自适应人工蜂算法
1.1 标准人工蜂算法
人工蜂算法是Karaboga于2005年提出[14],与蚁算法、鸟算法等同为仿生学算法,受启发于蜂通过个体分工和信息交换,相互合作完成对花蜜的采集。人工蜂算法对目标函数和约束几乎没有要求,初始参数的设置对算法结果几乎没有影响。蜂主要由引领峰、跟随蜂和侦查蜂组成。算法分为3个阶段[15]:①引领蜂搜索蜜源;②引领蜂分享蜜源信息,跟随蜂以一定的概率选择蜜源进行搜索;③侦查蜂在搜索空间随机搜索。
训狼记具体3个阶段如下[16]:
第1个阶段中,蜜源的位置代表目标函数的可能解向量,解的适应度值fiti决定了蜜源i(i=1,2,…,NP)的质量,NP为蜜源的数量,人工蜂算法中引领蜂和跟随蜂的数量相等且各占蜂的一半,蜂总数量等于蜜源的数量,每个引领蜂同一时间内只对一个蜜源引进行采蜜。设求解的输出维数为D,在t次迭代时蜜源i的位置表示为 …,其中,t表示当前的迭代次数;xid∈(
Ld,Ud),Ld和Ud分别表示搜索空间的下限和上限,d=1,2,…,D。蜜源i的初始位置产生于搜索空间中的随机位置,产生公式如式(1)所示:
xid=Ld+rand(0,1)(Ud-Ld)
(1)
引领蜂将在搜索开始时根据式(2)在蜜源i的周围搜索产生一个新的蜜源:韧性剪切带
vid=xid+φ(xid-xjd)
(2)
式中,d是在[1,D]中的一个随机整数,表示引领蜂随机的选择解向量中的一维进行搜索;j∈{1,2,…,NP},j≠i,表示在NP个蜜源中随机选择一个不等于i的蜜源;φ是[-1,1]均匀分布随机数。
当新蜜源Vi=[vi1 vi2 …… vid]的适应度优于Xi时,采用贪婪选择的方法用Vi代替Xi,否则保留Xi。
第2阶段,所有的引领蜂完成式(2)的运算后,飞回信息交流区共享蜜源信息。跟随蜂根据式(3)计算的概率决定是否跟随引领蜂:
pi=fiti/
(3)
随后跟随蜂采用赌的方式进行选择引领蜂,赌方式为产生一个[-1,1]均匀分布的随机数r,如果pi大于r,该跟随蜂按式(2)在蜜源i周围产生一个新的蜜源,并且采用同引领蜂相同的贪婪选择方式确定保留的蜜源。蜜源质量越高则吸引的跟随蜂越多。fi为目标值函数,解的适应度根据式(4)计算:
(4)
许才厚
第3阶段,搜索过程中如果蜜源Xi经过trial次迭代搜索到达蜜源最大开采次数limit没有到更好的蜜源,引领蜂将放弃该蜜源并且转变为侦查蜂,该侦查蜂会在搜索空间中随机产生一个新的蜜源代替Xi,整个过程按照式(5):
(5)
1.2 自适应人工蜂算法
标准人工蜂算法具有较强的全局搜索能力但是存在不足的是算法在运算过程中,高质量解可能会因为长时间得不到优化而被放弃,当trail值达到limit的值时,该高质量解会被放弃。自适应人工蜂算法利用目标函数值fi加权trail:
(6)
只有当Atrial大于等于limit时,引领蜂放弃该蜜源,在采用加权函数后,蜜源只有在连续次后得不到优化才会被引领蜂放弃,fi的开采次数与其质量高低成正比,使得高质量解可以长时间存活[17]。引领蜂转为侦查蜂的过程如式(7):
(7)
由此可见,自适应人工蜂算法的步骤[17]:①初始化蜜源Xi,设定参数蜜源数量NP,蜜源最大开采次数limit,迭代次数tmax;②将引领蜂分配到蜜源按式(2)进行搜索产生新蜜源Vi;③根据式(4)评价Vi的适应度并对其进行贪婪选择确定是否保留蜜源;④根据式(3)计算的概率确定引领蜂所在的蜜源是否被跟随;⑤跟随蜂对蜜源进行搜索并根据贪婪选择的结果确定是否保留
蜜源;⑥根据加权运算后的Atrial值判断蜜源Xi是否满足被放弃的条件,放弃蜜源后引领蜂转变为侦查蜂,否则直接执行步骤⑧;⑦侦查蜂根据式(7)搜索新的蜜源;⑧完成一次迭代,t=t+1,判断算法是否满足终止条件,满足条件则输出最优解,否则执行步骤②。
2 混合算法
2.1 BP神经网络
BP神经网络是一种具有三层或三层以上的多层神经网络,以三层神经网络为例,三层网络分别为输入层、隐含层、输出层。正向传播和误差反向传播为BP神经网络的两大步骤,当BP神经网络正向传播时,输入值通过输入层进入网络结构,再由输入层传递给隐含层并加权计算后传递给输出层,输出层经过计算产生输出值,通过输出值与期望值进行对比,若误差没有达到要求,则实现反向传播,修改阈值和权值来降低误差直到达到满足要求的误差值,BP神经网络原理结构图如图1所示。
图1 BP神经网络结构原理图
BP神经网络主要参数包括[18]:①输入向量X=(x1,x2,…,xn)T,n为输入层单元个数;②输出向甘肃理论学刊
量Y=(y1,y2,…,ym)T,m为输出层单元个数;③期望输出O=(o1,o2,…,om)T;④隐含层输出向量B=[b1,b2,…,bp]T,p为隐含层单元个数;⑤输入层至隐含层权值和阈值矩阵W=[wj1,wj2,……,wjn]T,C1=[c1,c2,…cj]T,j=1,2,…,p;⑥隐含层至输出层权值和阈值矩阵
V=[vk1,vk2,…,vkn]T
C2=[c1,c2,…ck]T k=1,2,…,m;
>平顶山热线

本文发布于:2024-09-20 16:47:01,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/233258.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:蜜源   算法   气体
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议