本发明涉及称重计量应用,尤其涉及一种基于改进woa-bp神经网络的称重补偿方法及装置。
背景技术:
1、称重传感器是一种力传感器,将施加在称重传感器上的力转化为可测量的电信号。信号的强度随施加力的比例变化。在实际使用过程中,称重传感器的压力测量值会随着温度的改变而产生非线性误差,需要对其进行温度补偿。每个称重传感器各种系数是不一样的,比如说非线性,灵敏度,都是需要补偿的,称重系统的通信方式也会影响数据精度。
2、称重数据所受的影响是很多因素综合造成的,因此称重数据的预测属于多因素影响的复杂非线性映射问题,bp神经网络算法刚好能解决此类问题。但传统的bp神经算法由于初始权值和阈值不准确,存在着稳定性差、收敛速度慢、预测精度低等一系列问题。woa算法相比于其他算法操作简单,跳出局部最优的能力较强,调整参数较少。该算法经常与其他算法相结合来解决计算问题中的寻优问题。
3、现有技术中基于woa-bp的压力变送器温度补偿研究一文针对压力变送器易受温度影响产生非线性误差,提出一种基于鲸鱼算法优化bp神经网络的woa-bp温度补偿模型。通过鲸鱼算法对传统的bp神经网络的权值和阈值进行优化,得到优化后的补偿模型,用于拟合压力变送器压力与温度之间的非线性关系,从而得到补偿后的数据。woa作为一种较新的群智能优化算法,拥有很强的全局搜索能力,并且具有结构简单、需调整参数少等优点,但woa算法在面对复杂的优化问题时依然无法避免易陷入局部最优解和收敛速度慢等问题。为了解决这些问题,本发明提出了一种基于改进woa-bp算法的称重补偿方法和装置,通过种群进化机制以及使用非线性收敛因子和引入自适应权重的方式对woa算法进行改进,增加种群多样性,避免算法过早陷入局部最优,提高局部搜索能力。
技术实现思路
1、发明目的:本发明提出一种基于改进woa-bp神经网络的称重补偿方法和装置,通改善woa收敛过早和种群多样性差的缺点,具有更高的预测精度和稳定性。
2、技术方案:本发明所述的一种基于改进woa-bp神经网络的称重补偿方法,具体包括以下步骤:
3、(1)预先获取待补偿的多种不同量程下的称重数据及其对应的环境温度;
4、(2)初始化bp神经网络,确定bp神经网络的输入和输出结构、初始的连接权值和阈值;
5、(3)利用改进后的woa算法优化bp神经网络的初始权值和阈值,将bp神经网络的训练误差作为个体的适应度值,选择最优的bp神经网络初始权值和阈值;
6、(4)根据优化得到的最优个体对bp神经网络结构的初始权值和阈值进行赋值;通过训练样本进行反复训练,将均方误差作为训练指标,并将训练得到的权值、阈值以及此时的网络结构参数保存,得到改进的woa-bp称重数据补偿模型,对不同量程下的称重数据进行补偿。
7、进一步地,所述步骤(1)实现过程如下:
8、选取对称重数据影响最大的称重传感器自身非线性、温度2个因素作为影响变量,采用最大最小法对采集的数据样本进行归一化预处理,以消除各维数据之间数量级差别,采用的归一化方法为最大最小公式法:
9、(x)=(x-xmin)/(xmax-xmin)(1)
10、式中,x为某一个值,xmin为数据集的最小值,xmax为数据集的最大值。
11、进一步地,所述步骤(2)实现过程如下:
12、bp神经网络采用三层网络拓扑结构输入层、隐含层和输出层,选取温度、称重传感器本身非线性两个因素为影响变量,作为bp神经网络输入层的输入量;输入层和输出层的节点数由输入数据和输出数据的类型确定,隐含层由下式确定:
13、
14、其中,k为隐含层节点数,m为输入层节点数,n为输出层节点数,α为1~10之间的常数。
15、进一步地,所述步骤(3)实现过程如下:
16、(31)种群初始化:确定woa初始化参数,包括种群规模、最大迭代次数、概率值;
17、(32)个体适应度值:计算每个个体的适应度值,记录当前最优的适应度值和其对应的位置为x*(t);
18、(33)种群进化:选出适应度最差的种群x1(t),根据公式(3)将其与最优的种群x*(t)人工杂交,得到优选后人工鱼群p(t);实现种群进化公式为:
19、
20、其中,b(t)表示一个二进制数,表示与b(t)对立的二进制数;
21、(34)在0-1生成一个随机数p,根据公式(4)得到系数向量a:
22、a=2ar-a (4)
23、其中,r是[0,1]之间的一个随机数,a是改进后的非线性收敛因子;非线性收敛因子计算公式为:
24、
25、其中,t代表当前迭代次数;tmax为最大迭代次数;
26、(35)随机数p≥0.5时,通过引入自适应权重因子ω后的位置更新公式进行螺旋捕食;公式为:
27、x(t+1)=w(t)x*(t)+d′eblcos(2πl) (6)
28、d′=|x*(t)-x(t)| (7)
29、其中,x(t)和x*(t)分别表示当前鲸鱼位置和每次迭代的最优解,d′表示第i条鲸鱼的最佳捕食位置,b是定义螺旋形状的常数,l为[-1,1]的随机数,t表示迭代次数;
30、(36)随机数p<0.5时且a≥1时,按照公式(8)更新位置:
31、x(t+1)=w(t)xrand(t)-ad”' (8)
32、d”'=|2r1prand1(t)-prand2(t)| (9)
33、其中,r1是[0,1]之间的随机数,xrand(t)为从当前鲸群中随机选择的位置向量,其中包含了可行解,prand1(t)和prand2(t)代表经过种群进化后的鱼群中的一个随机鱼群;
34、(37)随机数p<0.5且a<1时,按照公式(10)更新位置:
35、x(t+1)=w(t)x*(t)-ad" (10)
36、d"=|2r1x*(t)-prand(t)| (11)
37、其中,prand(t)为种群进化后随机选择的位置向量;
38、(39)判断是否达到了循环结束条件,若是,则结束算法,输出最优解,即实现对称重数据的补偿;否则,返回步骤(32)。
39、进一步地,所述输出层设置为1。
40、进一步地,步骤(31)所述的确定woa初始化参数为:
41、
42、d=|cx*(t)-x(t)| (13)
43、其中,a=2ar-a,c=2r,r是[0,1]之间的一个随机数;x(t)和x*(t)分别表示当前鲸鱼位置和每次迭代的最优解,d′表示第i条鲸鱼的最佳捕食位置,b是定义螺旋形状的常数,l为[-1,1]的随机数,t表示迭代次数,a是在迭代过程中线性减小,a和c是系数。
44、基于相同的发明构思,本发明所述的一种装置设备,包括存储器和处理器,其中:
45、存储器,用于存储能够在处理器上运行的计算机程序;
46、处理器,用于在运行所述计算机程序时,执行如上所述的基于改进woa-bp神经网络的称重补偿方法步骤。
47、基于相同的发明构思,本发明所述的一种存储介质上存储有计算机程序,所述计算机程序被至少一个处理器执行时实现如上所述的基于改进woa-bp神经网络的称重补偿方法步骤。
48、有益效果:与现有技术相比,本发明的有益效果:本发明通过运用具有全局搜索能力的改进的鲸鱼算法对bp神经网络的初始权值和阈值进行优化,可以提高bp神经网络的收敛速度和稳定性,使预测结果更加精确,大大提高了bp神经网络的性能;本发明能实时、快速的进行称重补偿;能够对化工、自动罐装、中药抓取等领域内各种称重数据进行精准预测,适用范围广,结果稳定而精确。