• 官方微信

    CA800二维码微平台 大视野

  • 工控头条

    CA800二维码工控头条App

当前位置:自动化网>自动化文库>解决方案>集约化水产养殖溶氧预测模型及其实现

集约化水产养殖溶氧预测模型及其实现

发布时间:2015-05-15 来源:大连海洋大学——高艳萍 类型:解决方案 人浏览
分享到:
关键字:

溶解氧;神经网络;预测模型;优化算法

导读:

通过对养殖池中影响溶氧变化因子的分析,选择溶氧、水深(cm)…水温度等9项因子作为输入参数,建立了溶氧预测模型。在该模型中,采用LMBP算法对BP神经网络进行优化,解决了BP神经网络的训练存在陷入局部最小点或训练速度慢等问题,提高了网络训练速度、保证了预测精度,具有较好的实用价值并可应用于其它水质因子的预测。

2.2  L-M优化算法的基本思想

传统的BP算法采用的是最速梯度下降法修正权值,训练过程即从某一起点沿误差函数的斜面逐渐达到最小点使之误差为零。而对于复杂的网络,误差曲面在多维空间,在训练的过程中可能会陷入某个局部最小点,由该点向多方向变化均会使误差增加,以至无法逃出这个局部最小点,导致网络不收敛。

 

Levenberg-Marquardt优化算法使每次迭代不再沿着单一的负梯度方向,而是允许误差沿着恶化的方向进行搜索,在最速梯度下降法和高斯-牛顿法之间自适应调整网络权值,使网络能够有效收敛,大大提高了网络的收敛速度和泛化能力。

 

L-M优化算法[2],又称为阻尼最小二乘法,其权值调整公式为

e为误差向量,J是误差对权值微分的雅可比矩阵,μ是一个标量。当μ增加时,它接近于具有较小的学习速率的最速下降法,当μ下降到0时,该算法就变成了高斯-牛顿法之间的平滑调和。L-M算法具体的迭代步骤为:

 

① 将所有输入送到网络并用公式(1)、(2)计算出网络的输出。另用误差函数(公式(3))计算出训练集中所有目标的误差平方和;

② 计算出误差对权值微分的雅可比矩阵J。

④ 用ω+Δω重复计算误差的平方和。当误差减小到某一目标误差时,算法即收敛。

 

3  神经网络溶氧预测模型

 

3.1  溶氧预测输入参数

神经网络的输入层所选用的输入神经元个数越多,网络运算的精度越高,但会加长网络训练时间,因此必须认真对待输入量的选择,在保证神经网络训练精度的前提下尽量减少输入量。养殖场里水质情况受到多种环境因素和多种人为因素的影响,以牙鲆养殖为例影响池中溶氧的因素可归纳为入水溶氧(mg/L)、入水温度(℃)、池水温度(℃)、池水溶氧(mg/L)、室温(℃),水深(cm)、pH、盐度和气压(pa)等。所以神经网络输入的备选参数为9个。

 

在建立水质预测模型之前,首先需要对模型的最优结构及网络参数进行选择。就此提出如下几个问题。

 

3.1.1  设定隐层层数

将输入层和输出层直接相连不能完成输入模式和输出模式不同的情况,此时需要设定隐层,形成输入信号的中间转换,如果有足够的隐层,输入模式能转换为期望的输出模式。养殖场水池中的溶氧预测,预测参数较多,各参数之间的相互关系也较为复杂,参考国内外研究,先设定一个隐层,当溶氧预测精度不能满足要求时,再逐步增加隐层层数,直到达到要求为止。

 

3.1.2  选择隐层节点数

在处理较复杂的问题时,选用的隐层单元数太少,网络无法记住所有的输入输出模式,使训练发散;如神经元过多,不仅会使网络训练时间急剧加长,可能出现“过拟合”现象,而且会大大降低泛化能力。因此必须在综合考虑模型的训练速率和泛化能力后,选择最佳的隐层神经元个数。 设q为输出层节点数,n为输入层节点数,p为隐层节点数,常见的几种选择单隐层节点数的估值方法如下:

通过上述经验公式计算隐层节点数分别得10、3和3+a, 选取最小值3进行训练学习,如果网络不能满足要求,可以逐步增加隐层节点数直至网络输出得到较满意的结果。

 

3.1.3  传递函数的选择

神经网络中每个神经元的输出值由传递函数函数来计算,Logsig函数输出值的范围是(0,1)S型函数是一个非线性函数,而且具有自动增益功能。当输入信号很小时,S型函数处于高增益区;当输入信号幅值变大后,增益减小。若输入值过大,有可能使神经元处于饱和状态,从而失去学习能力。所以在网络训练前需要对输入向量进行归一化处理,将其处理到[0,1]区间内,这样可更好发挥S型传递函数的作用。

上页 1 2 3 下页

本文地址:本文地址: http://www.ca800.com/apply/d_1ntn6lj6hkr31_1.html

拷贝地址

上一篇:高速船垂向运动控制方法研究

下一篇:看Kinco如何让糊盒机shua~shua~的飞起来

版权声明:版权归中国自动化网所有,转载请注明出处!

相关技术文章
溶解氧;神经网络;预测模型;优化算法