一种基于bas
‑
rbf的番茄需水预测方法
技术领域
1.本发明涉及一种基于bas
‑
rbf的番茄需水预测方法,属于水资源管理技术领域。
背景技术:
2.番茄是我国种植面积排名第四的蔬菜,番茄产业已成为我国蔬菜产业的重要组成部分,提升番茄产量对农业增效起着重要作用。番茄在生长过程中,尤其进入结果期对土壤水分含量有很高的要求,合理灌溉是提升番茄产量的关键。而且我国是个水资源十分短缺的国家,因此有效提升农业用水利用率,合理制定灌溉方案是亟待解决的问题。
3.影响结果期番茄的土壤含水量的因素有很多,比如风速、光照、空气湿度等等,传统灌溉的标准只通过重点关注土壤表面的干燥程度判断是否给水,判断条件单一,考虑角度较为片面,得到的灌溉指示与实际需求误差较大。针对这一问题,需要选择更加准确的降维分析方法,对可能影响土壤含水量的各种环境因素进行筛选,确定影响较大的环境因素,进而做出更加准确的土壤含水量判断。同时,想要实现对土壤含水量的预测,提前进行做好给水准备,应分析番茄需水和各环境因素之间的关系。各影响因素之间具有复杂的非线性关系,人工神经网络是近些年来快速成熟起来的非线性系统理论,善于处理非线性问题。但是,一般的神经网络通常存在求解的早熟和容易陷入局部极小值的问题,另一方面,大多数智能算法优化神经网络进行预测的运算周期长,编码复杂,因此,为了解决番茄需水预测中精度低,预测时间长等问题,选择收敛速度快且可避免陷入局部极小值的径向基(radial basis function,rbf)神经网络进行番茄需水预测是目前的一个主要预测方法。
技术实现要素:
4.经分析,发现现有技术存在如下缺点:
5.1)传统判断番茄需水量的方式比较片面,忽略环境因素之间的相关性分析,判断条件单一,判断结果误差大;
6.2)rbf神经网络需要初始化相关的网络参数,如隐含层基函数中心,隐含层与输出层间的连接权值等,传统的rbf神经网络中这些参数都是随机选择,而参数的选择直接关乎到神经网络的预测精度好坏,因此初始化网络参数的选择在提升网络预测精度中至关重要。
7.基于此,本发明提出一种基于bas
‑
rbf的番茄需水预测方法,使用主成分分析(principal component analysis,pca)算法筛选出对番茄需水量影响更多的环境因素,再利用天牛须搜索算法(beetle antennae search algorithm,bas)的高收敛质量、快收敛速度、易于实现等优点,优化rbf神经网络模型中隐含层基函数中心以及隐含层与输出层间的连接权值,进而建立了与番茄结果期需水特性相适应的需水预测模型。
8.本发明采用下述的技术方案:
9.一种基于天牛须搜索算法优化径向基神经网络的番茄需水预测方法,包括如下步骤:首先,对数据进行预处理,筛选出主要成分指标;其次,以主要成分指标的数据作为输入
变量,利用bas优化rbf神经网络的初始化参数;再次,以得到的最优初始化参数建立bas
‑
rbf预测模型,并对该模型进行训练得到番茄结果期需水预测模型;最后,利用所述需水预测模型进行需水预测,得到预测结果。
10.特定地,使用主成分分析算法对数据进行降维和去噪,筛选出累计贡献率大于85%的环境因素作为主要成分指标,选出的主要成分指标为:平均气压、相对湿度和平均气温。
11.利用bas算法优化rbf神经网络的初始化参数包括以下步骤:
12.步骤1,数据处理后输入数据;数据处理是将采集到的12个环境因素通过spss26.0进行主成分分析,筛选出平均气压、相对湿度和平均气温三个主要成分指标;输入数据是指将这三个环境因素的数据作为输入变量,将数据分为训练集和测试集。
13.步骤2,初始化bas参数;包括设置天牛的初始位置,并保存在bests中;设置初始步长和左右须之间的初始距离;选取训练集的均方误差作为适应度函数,利用适应度函数公式,计算天牛初始位置的适应度函数值,并保存到bestr中。
14.步骤3,建立随机产生隐含层基函数中心,隐含层与输出层间的连接权值的rbf神经网络。
15.步骤4,利用天牛通过左右须觅食的原理进行目标搜索,以训练集均方误差作为适应度函数,计算天牛个体适应度,不断更新直到满足结束条件,获得最佳天牛位置,得到最优的rbf神经网络初始化参数;进一步包括:
16.(1)计算左右须适应度函数值f(x
l
)和f(x
r
),比较f(x
l
)和f(x
r
)大小关系确定天牛下一步的前进方向,移动天牛位置,更新bests;计算此时天牛位置的适应度函数值f(x
t
),并更新bestr;
[0017][0018][0019][0020]
其中,x
r
为右须的位置坐标,x
l
是左须的位置坐标,x
t
是t时刻天牛的位置坐标;d
t
是t时刻左右须之间的距离,δ
t
为t时刻天牛的步长,sign为符号函数,表示方向单位向量;
[0021][0022]
k表示空间维度,rnd()表示随机函数。
[0023]
(2)判断是否满足结束要求,是则继续进行步骤(3),否则更新步长和左右须之间的距离,返回至步骤(1);结束要求是指f(x
t
)达到适应度函数精度要求或迭代次数达到上限。
[0024]
(3)迭代结束,bests中保存的值就是bas搜索到的天牛最佳位置。
[0025]
将天牛最佳位置作为rbf神经网络的隐含层基函数中心,再通过最小二乘法计算得到隐含层与输出层间的连接权值,从而得到最优的rbf神经网络初始化参数。
[0026]
本发明技术方案的优势在于:
[0027]
1)对番茄需水量预测的传统判断方式片面,不能充分考虑环境因素之间的相关
性,得出的结果误差较大,不具备科学性。由此,使用pca降维分析方法,充分考虑各环境影响因素的相关性,综合分析,最终选出影响较大的环境因素。
[0028]
2)rbf神经网络收敛速度快,有较强的输入输出映射功能,是在前向网络中完成映射功能的最优网络。但神经网络参数初始化选择的随机性,降低了网络的预测精度。加入bas算法避免随机选择,从而获得更加合适的隐含层基函数中心以及隐含层与输出层间的连接权值,实现较高水平的需水量预测结果。本申请选用的bas算法只需要一个个体,即一只天牛,运算量大大降低,并且对于低维优化的函数,具有高收敛质量。提高预测精度的同时也能提高算法效率。
附图说明
[0029]
图1是本发明基于bas
‑
rbf的番茄需水预测方法的流程图;
[0030]
图2示出了rbf神经网络拓扑结构;以及
[0031]
图3是bas算法优化rbf神经网络初始化参数的流程图。
具体实施方式
[0032]
本发明提供的实验对象为河北省邯郸市河北工程大学试验田中的番茄作物。选用番茄品种为天马
‑
54,其早熟,抗寒,根系发达等优点,适合北方种植。数据以天为单位采集了2014
‑
2017年每年6月1日
‑
31日的各环境参数。通过pca算法分析得出主要成分指标的数据作为输入变量,每日番茄需水量作为网络的输出变量,仿真结果与传统rbf神经网络和bas
‑
bp模型预测方法进行对比,验证方法的有效性。
[0033]
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
[0034]
本发明基于bas
‑
rbf的番茄需水预测方法流程如图1所示,具体步骤如下:
[0035]
首先,对数据进行预处理,通过pca算法进行降维和去噪,筛选出累计贡献率大于85%的环境因素作为主要成分指标,将这些环境因素的数据作为输入变量。
[0036]
在一个具体实施例中,选出的主要成分指标为:平均气压、相对湿度和平均气温。
[0037]
其次,通过bas算法对天牛位置进行寻优,利用天牛通过左右须觅食的原理进行目标搜索,以训练集均方误差作为适应度函数,计算天牛个体适应度,不断更新直到满足条件,得到最佳天牛位置,将其作为rbf神经网络的隐含层基函数中心,再通过最小二乘法计算得到隐含层与输出层间的连接权值,以此为初始化参数建立bas
‑
rbf预测模型,输入训练集数据对模型进行训练,最终得到番茄结果期需水预测bas
‑
rbf模型。
[0038]
最后,使用训练好的预测模型进行番茄需水预测。将训练集数据输入到神经网络,得到需水预测结果。
[0039]
本发明还对预测方法进行了仿真验证,将bas
‑
rbf的预测结果同传统的rbf神经网络预测模型进行对比,验证预测方法的有效性。
[0040]
(一)筛选环境因素
[0041]
影响番茄需水预测结果的环境因素繁杂且具有非线性关系,若在分析过程中把所有的环境因素都考虑进去,会导致重要环境因素的影响因子偏低,使预测误差偏大,因此合理选择环境因素是提高预测精度的关键步骤。
[0042]
本发明选择pca算法来解决环境因素筛选问题。pca是一种降维算法。pca的主要思想是将n维特征映射到k维上,这k维是全新的正交特征也被称为主成分,是在原有n维特征的基础上重新构造出来的k维特征。降维的过程使得数据集更易使用,降低算法的计算开销,使得结果更容易理解。具体步骤如下:
[0043]
1)将原始数据的n个样本构成的原始矩阵x进行标准化,得到矩阵x’=[x1,x2,...x
n
],求出其协方差矩阵;
[0044]
2)求协方差矩阵的特征值和特征向量;
[0045]
3)按照特征值的大小,将特征向量组合形成一个映射矩阵,并根据累计贡献率对指定的主成分进行保留(一般用累计贡献率在85%以上的主成分代替全部的影响因子),最终得到由相应主成分组成的映射矩阵;
[0046]
4)用映射矩阵对原始矩阵x进行映射得到新的变量,得到的新的变量就是筛选出来的主要成分指标。
[0047]
通过上述步骤可以实现对环境影响因素的筛选,将平均气压、日最高气压、日最低气压、平均地表气温、日地表最高气温、日最低气温、相对湿度、日照时数、平均气温、日最高气温、日最低气温、平均风速共12个环境因素通过spss26.0进行主成分分析得到表1总方差解释表,从表1可得,前3个成分累计贡献率达85.85%,即从12维降维至3维,筛选出三个主成分,根据各成分在三个成分中的贡献率比重,进而确定三个主要成分指标为平均气压、相对湿度和平均气温。
[0048]
表1总方差解释
[0049][0050]
(二)bas算法优化rbf神经网络
[0051]
rbf神经网络可以根据具体问题确定相应的网络拓扑结构,具有自学习、自组织、自适应功能,它对非线性连续函数具有一致逼近性,学习速度快,可以进行大范围的数据融
合,可以并行高速地处理数据。rbf神经网络的优良特性使得其显示出比bp神经网络更强的生命力,正在越来越多的领域内替代bp神经网络。rbf神经网络是三层前馈式网络,其拓扑结构如图2所示。
[0052]
第一层由一些感知神经元组成,用于连接外界环境,叫做输入层;第二层叫做隐含层,rbf神经网络只有一个隐含层用于将输入变量映射到隐含层空间,是非线性变换;第三层叫做输出层,输出层节点数量与输出向量的维数相同,该层对隐含层的输出实现线性组合,即对隐含层神经元输出的信息进行线性加权后输出,作为整个神经网络的输出结果。
[0053]
bas算法原理:根据天牛觅食的原理构建的启发式搜索算法,当天牛觅食时,并不知道食物的具体位置,根据食物气味的强弱来觅食。天牛通过两只触角(须),如果左须收到的气味强度大于右须,下一步天牛飞向左边,否则飞向右边。
[0054]
具体过程包括搜索行为和检测行为:
[0055]
首先对搜索行为进行建模。提出一个随机的天牛搜索方向,如下:
[0056][0057]
其中,表示方向单位向量,k表示空间维度,rnd()表示随机函数。
[0058]
左右须的行为:
[0059][0060][0061]
其中,x
r
为右须的位置坐标,x
l
是左须的位置坐标,d是左右须之间的距离,x
t
是t时刻天牛的位置坐标,d
t
是t时刻左右须之间的距离。
[0062]
其次制定检测行为。进一步生成迭代模型,通过考虑搜索行为与气味相关联:
[0063][0064]
其中,δ
t
为t时刻天牛的步长,sign为符号函数,f(x
l
),f(x
r
)分别是天牛左右须的适应度函数值。
[0065]
搜索参数方面,左右须之间的距离和步长更新规则如下:
[0066]
d
t 1
=eta*d
t
0.01
[0067]
δ
t 1
=eta*δ
t
[0068]
其中eta是衰减系数,一般情况下取0.95。
[0069]
经过天牛须算法迭代运算,求出最优解,得到rbf神经网络的初始参数。
[0070]
bas算法优化rbf神经网络初始化参数的流程如图3所示,包括以下步骤:
[0071]
(1)数据处理。将采集到的12个环境因素通过spss26.0进行主成分分析,筛选出平均气压、相对湿度、平均气温三个主要成分指标;
[0072]
(2)输入数据。将这三个环境因素的数据作为输入变量。对数据进行处理,2014
‑
2016年每年6月份的数据作为训练集,2017年6月份的数据为测试集;
[0073]
(3)初始化bas参数。天牛的初始位置选取[
‑
0.5,0.5]之间的随机数,并保存在bests中;设置初始步长和左右须之间的初始距离;左右须之间的距离必须足以覆盖所有的搜索范围,本申请左右须初始距离设置为5。选取训练集的均方误差作为适应度函数,利用
适应度函数公式,计算天牛初始位置的适应度函数值,并保存到bestr中;
[0074]
(4)根据训练集建立随机产生隐含层基函数中心,隐含层与输出层间的连接权值的rbf神经网络;
[0075]
(5)计算左右须适应度函数值f(x
l
)和f(x
r
),比较f(x
l
)和f(x
r
)大小关系确定天牛下一步的前进方向,移动天牛位置,更新bests;计算此时天牛位置的适应度函数值f(x
t
),并更新bestr;
[0076]
(6)判断是否满足结束要求,是则继续进行步骤(7),否则更新步长和左右须之间的距离,返回至步骤(5);结束要求是指f(x
t
)达到适应度函数精度要求或迭代次数达到上限;
[0077]
(7)迭代结束。此时bests中保存的值就是bas搜索到的最优解,从而得到最优的rbf神经网络初始化参数。
[0078]
根据最优解初始化rbf神经网络参数,导入训练集进行训练,最终得到bas
‑
rbf预测模型。
[0079]
本发明提出了bas
‑
rbf神经网络在番茄结果期的需水量预测方法,利用rbf神经网络训练速度快,无局部极小问题的优点,并用bas算法优化其隐含层基函数中心和隐含层与输出层间的连接权值,极大提高了rbf预测模型的预测精度。通过将该预测方法的预测结果与其他几种预测方法的结果进行对比,结果表明,bas
‑
rbf预测方法的预测精度要高于bas
‑
bp神经网络预测以及rbf神经网络预测方法。
[0080]
此外,运用主成分分析方法分析用水影响因素,选择影响程度较高的环境因素作为输入,这样比较传统单一使用全部的环境因素作为输入更具有科学性。
[0081]
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种基于天牛须搜索算法优化径向基神经网络的番茄需水预测方法,包括如下步骤:首先,对数据进行预处理,筛选出主要成分指标;其次,以主要成分指标的数据作为输入变量,利用天牛须搜索算法(beetle antennae search algorithm,bas)优化径向基神经网络(radial basis function,rbf)的初始化参数;再次,以得到的最优初始化参数建立bas
‑
rbf预测模型,并对该模型进行训练得到番茄结果期需水预测模型;最后,利用所述需水预测模型进行需水预测,得到预测结果。2.根据权利要求1所述的方法,使用主成分分析(principal component analysis,pca)算法对数据进行降维和去噪,筛选出累计贡献率大于85%的环境因素作为主要成分指标。3.根据权利要求2所述的方法,选出的主要成分指标为:平均气压、相对湿度和平均气温。4.根据权利要求1或2所述的方法,所述利用bas算法优化rbf神经网络的初始化参数包括以下步骤:步骤1,数据处理后输入数据;步骤2,初始化bas参数;步骤3,建立随机产生隐含层基函数中心,隐含层与输出层间的连接权值的rbf神经网络;步骤4,利用天牛通过左右须觅食的原理进行目标搜索,以训练集均方误差作为适应度函数,计算天牛个体适应度,不断更新直到满足结束条件,获得最佳天牛位置,得到最优的rbf神经网络初始化参数。5.根据权利要求4所述的方法,所述数据处理是将采集到的12个环境因素通过spss26.0进行主成分分析,筛选出平均气压、相对湿度和平均气温三个主要成分指标;所述输入数据是指将这三个环境因素的数据作为输入变量,将数据分为训练集和测试集。6.根据权利要求4所述的方法,初始化bas参数包括设置天牛的初始位置,并保存在bests中;设置初始步长和左右须之间的初始距离;选取训练集的均方误差作为适应度函数,利用适应度函数公式,计算天牛初始位置的适应度函数值,并保存到bestr中。7.根据权利要求6所述的方法,所述步骤4进一步包括:(1)计算左右须适应度函数值f(x
l
)和f(x
r
),比较f(x
l
)和f(x
r
)大小关系确定天牛下一步的前进方向,移动天牛位置,更新bests;计算此时天牛位置的适应度函数值f(x
t
),并更新bestr;其中,x
r
为右须的位置坐标,x
l
是左须的位置坐标,x
t
是t时刻天牛的位置坐标;(2)判断是否满足结束要求,是则继续进行步骤(3),否则更新步长和左右须之间的距离,返回至步骤(1);(3)迭代结束,bests中保存的值就是bas搜索到的天牛最佳位置。8.根据权利要求7所述的方法,比较f(x
l
)和f(x
r
)大小关系确定天牛下一步的前进方向,移动天牛位置,具体是:向,移动天牛位置,具体是:
其中,d
t
是t时刻左右须之间的距离,δ
t
为t时刻天牛的步长,sign为符号函数,表示方向单位向量;其中,k表示空间维度,rnd()表示随机函数。9.根据权利要求7所述的方法,结束要求是指f(x
t
)达到适应度函数精度要求或迭代次数达到上限。10.根据权利要求7所述的方法,将天牛最佳位置作为rbf神经网络的隐含层基函数中心,再通过最小二乘法计算得到隐含层与输出层间的连接权值,从而得到最优的rbf神经网络初始化参数。
技术总结
本发明公开了一种基于BAS
技术研发人员:刘心 李玉琼 李文竹
受保护的技术使用者:河北工程大学
技术研发日:2021.03.17
技术公布日:2021/6/29
转载请注明原文地址:https://doc.8miu.com/read-15295.html