开篇:润墨网以专业的文秘视角,为您筛选了一篇基于神经网络模型预测黄河调水调沙期间含沙量程序设计范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
一、研究背景
黄河作为我国第二大河,水少沙多,水沙不平衡使黄河至今仍是最为复杂难以治理的河流。研究含沙量的预测,可为今后黄河流域水资源的统一调度管理,尤其是预防黄河下游再次出现断流提供科学的依据。人工神经网络与传统的方法相比具有不可替代的优势,它有很强的自学能力,具有很强的鲁棒性、容错性、非线性,在建立BP神经网络模型的基础上,对黄河下游调水调沙期间含沙量的预测进行了研究。
二、研究过程
1、成立科技创新领导小组,确保项目顺利进行
该项目于2013年7月,以主管局长为组长、技术人员和技师等为成员的工作小组,为确保该项目的顺利进行打下坚实基础。
2、制定方案、精心设计
该方法是以生物神经网络为基础,模拟人脑行为的一种信息处理方法,具有联想学习能力、自组织、自适应、高度的非线性运算能力和很好的在线学习能力,适合于对非线性系统的模拟。但BP神经网络模型需要大量的样本数据,通过山东黄河电子政务系统中的山东水情网以及2012年度济南黄河河务局槐荫黄河河务局调水调沙期间数据资料搜集资料,然后建立模型,训练模型。
3、项目完善阶段
通过训练好的模型预测的含沙量,与实测含沙量基本吻合。
三、模型建立和程序设计
1、技术原理
利用神经网络的思路,即由因变量预测期望值,在matlab中调用神经网络函数,确定隐含层、输出层的计算函数,确定新建模型的精度,循环计算,直到达到精度要求。
模型对应的实例,取含沙量作为神经元的输出层,以影响预测目标的特征因素作为输入层神经元,为避免众多不确定因素对预测结果的干扰,利用神经网络具有的识别功能,即输入事物的部分特征信息,就能识别整个事物的功能,经过讨论与分析,选取流量、水位为影响因子值。样本为2012年6月21日至7月31日共41日的流量、水位、和含沙量,用于训练模型。
具体步骤如下:
第一步:进行归一化。本次建立的模型归一化公式为:
第二步:网络建立,应用newff()函数建立BP网络结构;
第三步:网络训练,应用train()函数对网络进行训练;
第四步:网络测试,对训练好的模型进行仿真预测。
2、性能指标
本网络输入层2个,隐含层6个,输出层1个;隐含层和输出层的激励函数分别为tansig,purelin;模型训练时间设置为1000,训练精度设置为0.005。
3、程序设计
clear;
clc;
X = [];
D = [];
net = newff([ ],[6 1],{'tansig','purelin'})
net.trainParam.epochs = 1000;
net.trainParam.goal=0.005;
net=train(net,X,D);
O=sim(net,X);
plot(X,D,X,O);
py=[ ]
sim(net,py)
4、先进性与创新性
该方法借鉴了神经网络的模型,建立了考虑流量、水位所对应的含沙量神经网络模型,该方法运行速度快,比以前的含沙量预测方法具有一定先进性,不需要大量的水文资料,而且此模型的输入层影响因素可以多加几个,更好的体现实际情况。
5、国内外同技术比较
人工神经网络自1986年由Romelhart提出误差反向传播算法后大量应用于模式识别与分类、系统仿真、故障职能诊断、图像处理、函数拟合、最优预测等方面,关于预测黄河含沙量国内外研究甚少。
四、应用的效果
通过程序计算,计算出的结果见表1。
从预测结果看来,本次研究所构造的BP网络模型训练样本的相对误差的绝对值最小为0.27%,最大为3.92%,全部介于0-10%。显而易见,BP网络模型的计算结果是合理的,符合实际情况,它较好的反映了黄河下游调水调沙期间的含沙量情况,预测精度较高,令人满意。
该方法计算简单、精度高、操作方便,不必去实地测量含沙量,大大减轻劳动强度,可为黄河流域水资源的统一调度管理,尤其是汛期调水调沙提供科学依据。
(作者单位:济南黄河河务局槐荫黄河河务局)