基于适应性和声搜索的水体叶绿素a软测量方法与流程

文档序号:12303771阅读:361来源:国知局

本发明涉及水体叶绿素a测量领域,尤其是涉及一种基于适应性和声搜索的水体叶绿素a软测量方法。



背景技术:

叶绿素a是反映水体水质的一项重要指标。为了动态监测某片水域的水质,人们常常需要掌握该水域中叶绿素a的动态变化规律,而传统人工测量水体叶绿素a的方法往往需要耗费大量的人力和物力,并且人工测量方法实时性不强,难以实现长期无间断地监测。为此,研究人员提出了水体叶绿素a的软测量方法,该方法通过建立水体叶绿素a的数学模型,将建立的数学模型作为水体叶绿素a的软测量模型,从而把握水域中叶绿素a的动态变化规律。水体叶绿素a软测量方法具有诸多的优点。一方面,水体叶绿素a软测量方法可以减少人力成本,并且节省测量试剂的消耗,在很大程度上节约测量成本。另一方面,水体叶绿素a软测量方法可以与计算机技术相结合,实现长期无间断地监测。

由于水体叶绿素a软测量方法具有很多优点,许多研究人员提出了各种水体叶绿素a的软测量方法。例如,王雪莲等利用bp神经网络对太湖水体叶绿素a含量建立了软测量模型,实验结果表明提出方法获得了一定的测量精度,但其测量精度还有待于进一步提高(王雪莲,宋玉芝,孔繁璠,王宇佳.利用bp神经网络模型对太湖水体叶绿素a含量的估算[j].中国农业气象,2016,37(4):408-414.);吴志峰等利用粒子群优化算法来优化设计神经网络的参数,然后利用优化设计好的神经网络作为珠江口叶绿素a浓度的反演模型,实验结果表明提出方法能够获得一定的效果(吴志峰,张棋斐,解学通.基于粒子群和神经网络的珠江口叶绿素a浓度反演[j].广州大学学报(自然科学版),2016,15(6):1-8.);李峰等利用bp神经网络模型对三峡水库神农溪叶绿素a浓度建立软测量模型,实验结果表明提出方法能够较好地预测三峡水库神农溪叶绿素a的浓度(李峰,纪道斌,刘德富,严萌,龙良红,李竹.基于bpnn的三峡水库神农溪叶绿素a浓度预测[j].环境科学与技术,2015,38(12q):23-27+31.)。

从现有的研究成果中可知,许多研究人员已经利用了神经网络来实现水体叶绿素a的软测量,但传统神经网络方法应用于水体叶绿素a软测量时容易出现陷入局部极值,存在着测量精度不高的缺点。



技术实现要素:

本发明的目的是提供一种基于适应性和声搜索的水体叶绿素a软测量方法,它在很大程度上能够克服传统神经网络应用于水体叶绿素a软测量时容易出现陷入局部极值,测量精度不高的缺点,本发明能够提高水体叶绿素a的软测量精度,提高水体叶绿素a的测量效率。

本发明的技术方案:一种基于适应性和声搜索的水体叶绿素a软测量方法,包括以下步骤:

步骤1,在需要软测量的水域内连续yd天采集水体样本,并对水体样本进行检测,测量出水质相关的指标:氨氮、总氮、总磷、正磷酸盐、高锰酸盐指数、硝酸盐氮、水温、溶解氧、ph值、五日生化需氧量、叶绿素a,然后将采集的数据作为样本数据集,并对采集的样本数据集进行归一化处理;

步骤2,用户初始化参数,所述初始化参数包括三层感知器神经网络隐含层神经元的个数bn,软测量跨度天数td,和声库的大小hms,最大评价次数max_fes;

步骤3,令当前演化代数t=0,当前评价次数fes=0;

步骤4,令选取概率hmcrt=0.9,扰动概率part=0.5;

步骤5,令三层感知器神经网络的输入变量为归一化的一天的水质指标数据:氨氮、总氮、总磷、正磷酸盐、高锰酸盐指数、硝酸盐氮、水温、溶解氧、ph值、五日生化需氧量、叶绿素a,输出为归一化的td天后的叶绿素a,然后确定三层感知器神经网络的隐含层和输出层的传递函数,并计算三层感知器神经网络的优化设计参数个数d=bn×13+1;

步骤6,随机初始化和声库其中个体下标i=1,2,...,hms;并且为和声库pt中的第i个个体,个体存储了三层感知器神经网络的d个待优化设计参数;为个体中的第j个待优化设计参数,并且维度下标j=1,2,...,d;

步骤7,计算和声库pt中每个个体的适应值,然后令当前评价次数fes=fes+hms;

步骤8,保存和声库pt中的最优个体bestt和最差个体worstt

步骤9,按公式(1)计算适应性因子cw:

cw=rand(0,1)×0.1;(1)其中rand为服从均匀分布的随机实数产生函数;

步骤10,在[0,1]之间随机产生两个实数pa1和pa2,然后按公式(2)计算当前选取概率nhmcr和当前扰动概率npar:

步骤11,执行适应性搜索操作产生一个新个体ut,具体步骤如下:

步骤11.1,令计数器kj=1;

步骤11.2,如果计数器kj小于或等于d,则转到步骤11.3,否则转到步骤12;

步骤11.3,在[0,1]之间产生一个随机实数pcr;

步骤11.4,如果pcr小于nhmcr,则转到步骤11.5,否则转到步骤11.14;

步骤11.5,在[1,hms]之间产生一个随机正整数cr1;

步骤11.6,令

步骤11.7,在[0,1]之间产生一个随机实数pur;

步骤11.8,如果pur小于npar,则转到步骤11.9,否则转到步骤11.20;

步骤11.9,按公式(3)计算高斯均值cmu和高斯标准差cstd:

步骤11.10,随机生成一个以cmu为均值,cstd为标准差的高斯分布随机实数gmv;

步骤11.11,令精英反向值其中cakj为和声库pt中第kj维的最小值,cbkj为和声库pt中第kj维的最大值;

步骤11.12,令其中权值系数nw为[0,1]之间的一个随机实数;

步骤11.13,转到步骤11.20;

步骤11.14,在[1,hms]之间随机产生两个不相等的正整数tr1和tr2;

步骤11.15,按公式(4)计算高斯均值rmu与高斯标准差rsd:

步骤11.16,随机生成一个以rmu为均值,rsd为标准差的高斯分布随机实数rmv;

步骤11.17,令采样值

步骤11.18,在[0,1]之间产生一个随机实数kp;

步骤11.19,令

步骤11.20,令计数器kj=kj+1,然后转到步骤11.2;

步骤12,计算个体ut的适应值;

步骤13,按公式(5)更新选取概率hmcrt+1和扰动概率part+1

步骤14,如果个体ut的适应值优于worstt的适应值,则在和声库pt中用个体ut替换worstt,否则丢弃个体ut

步骤15,令当前评价次数fes=fes+1,并令当前演化代数t=t+1,然后保存和声库pt中的最优个体bestt和最差个体worstt

步骤16,重复步骤9至步骤15,直至当前评价次数fes达到max_fes后结束,将执行过程中得到的最优个体bestt解码为三层感知器神经网络的优化设计参数,并以得到的三层感知器神经网络作为软测量模型,即可实现水体叶绿素a的软测量。

本发明采用适应性和声搜索算法来优化设计三层感知器神经网络的参数,将优化设计的三层感知器神经网络作为水体叶绿素a的软测量模型。在适应性和声搜索算法中,将高斯采样算子与精英反向操作相结合,并根据当前的演化状态适应性地调整控制参数,从而增强算法的搜索能力,提高软测量模型的精度。本发明能够提高水体叶绿素a的软测量精度,提高水体叶绿素a的测量效率。

附图说明

图1为本发明的流程图。

具体实施方式

下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。

实施例:

步骤1,在需要软测量的水域内连续yd=68天采集水体样本,并对水体样本进行检测,测量出水质相关的指标:氨氮、总氮、总磷、正磷酸盐、高锰酸盐指数、硝酸盐氮、水温、溶解氧、ph值、五日生化需氧量、叶绿素a,然后将采集的数据作为样本数据集,并对采集的样本数据集进行归一化处理;

步骤2,用户初始化参数,所述初始化参数包括三层感知器神经网络隐含层神经元的个数bn=5,软测量跨度天数td=2,和声库的大小hms=100,最大评价次数max_fes=300000;

步骤3,令当前演化代数t=0,当前评价次数fes=0;

步骤4,令选取概率hmcrt=0.9,扰动概率part=0.5;

步骤5,令三层感知器神经网络的输入变量为归一化的一天的水质指标数据:氨氮、总氮、总磷、正磷酸盐、高锰酸盐指数、硝酸盐氮、水温、溶解氧、ph值、五日生化需氧量、叶绿素a,输出为归一化的td天后的叶绿素a,然后确定三层感知器神经网络的隐含层和输出层的传递函数,并计算三层感知器神经网络的优化设计参数个数d=bn×13+1;

步骤6,随机初始化和声库其中个体下标i=1,2,...,hms;并且为和声库pt中的第i个个体,个体存储了三层感知器神经网络的d个待优化设计参数;为个体中的第j个待优化设计参数,并且维度下标j=1,2,...,d;

步骤7,计算和声库pt中每个个体的适应值,然后令当前评价次数fes=fes+hms;

步骤8,保存和声库pt中的最优个体bestt和最差个体worstt

步骤9,按公式(1)计算适应性因子cw:

cw=rand(0,1)×0.1;(1)

其中rand为服从均匀分布的随机实数产生函数;

步骤10,在[0,1]之间随机产生两个实数pa1和pa2,然后按公式(2)计算当前选取概率nhmcr和当前扰动概率npar:

步骤11,执行适应性搜索操作产生一个新个体ut,具体步骤如下:

步骤11.1,令计数器kj=1;

步骤11.2,如果计数器kj小于或等于d,则转到步骤11.3,否则转到步骤12;

步骤11.3,在[0,1]之间产生一个随机实数pcr;

步骤11.4,如果pcr小于nhmcr,则转到步骤11.5,否则转到步骤11.14;

步骤11.5,在[1,hms]之间产生一个随机正整数cr1;

步骤11.6,令

步骤11.7,在[0,1]之间产生一个随机实数pur;

步骤11.8,如果pur小于npar,则转到步骤11.9,否则转到步骤11.20;

步骤11.9,按公式(3)计算高斯均值cmu和高斯标准差cstd:

步骤11.10,随机生成一个以cmu为均值,cstd为标准差的高斯分布随机实数gmv;

步骤11.11,令精英反向值其中cakj为和声库pt中第kj维的最小值,cbkj为和声库pt中第kj维的最大值;

步骤11.12,令其中权值系数nw为[0,1]之间的一个随机实数;

步骤11.13,转到步骤11.20;

步骤11.14,在[1,hms]之间随机产生两个不相等的正整数tr1和tr2;

步骤11.15,按公式(4)计算高斯均值rmu与高斯标准差rsd:

步骤11.16,随机生成一个以rmu为均值,rsd为标准差的高斯分布随机实数rmv;

步骤11.17,令采样值

步骤11.18,在[0,1]之间产生一个随机实数kp;

步骤11.19,令

步骤11.20,令计数器kj=kj+1,然后转到步骤11.2;

步骤12,计算个体ut的适应值;

步骤13,按公式(5)更新选取概率hmcrt+1和扰动概率part+1

步骤14,如果个体ut的适应值优于worstt的适应值,则在和声库pt中用个体ut替换worstt,否则丢弃个体ut

步骤15,令当前评价次数fes=fes+1,并令当前演化代数t=t+1,然后保存和声库pt中的最优个体bestt和最差个体worstt

步骤16,重复步骤9至步骤15,直至当前评价次数fes达到max_fes后结束,将执行过程中得到的最优个体bestt解码为三层感知器神经网络的优化设计参数,并以得到的三层感知器神经网络作为软测量模型,即可实现水体叶绿素a的软测量。

本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1