BP神经网络时间预测模型预.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
BP神经网络时间预测模型预

基于BP神经网络的旅游人口增长时间预测模型 四川未来的旅游人数与之前数年的旅游人数有着必然的联系,旅游的人会因为之前到四川旅游的人的影响而决定是否到四川旅游,所以四川未来的旅游人数必然受到之前旅游人数的影响,这样我们就可以利用之前到四川旅游的人数时间数据列来预测未来到四川旅游的人数。 模型背景: 本模型是含有4个节点的网络,各节点之特性为Sigmoid型,且指定网络只有一个输出y,任一节点i的输出为Oi,并有10个样本(xk,yk)(k=1,2,3,…,10),对某一输入xk,网络输出为yk节点i的输出为Oik,节点j的输入为 具体算法: 1.输入时间序列P=[ ],X=[ ] (P2002年至2011年的年份,X指2002年至2011年到四川旅游的人数) 2..对样本进行数值处理,使之变换成BP神经网络的输入模式对。这里我们采用数据移动平滑处理,公式为: 3.初始化BP神经网络各层的权值和阈值,让各层的权值和阈值取个随机数作为初值,wij=random(),vjt=random()。这里利用MATLAB软件对BP神经网络模型的权值进行随机初始化,得到随机初始化权值。 4.对每个模式进行如下循环: 其中为网络实际输出,定义为: , 且 于是 当j为输出节点时: 若j不是输出节点,则有 因此 5.计算bj和ci 6.计算各层误差,误差函数定义为: 7.判断是否循环至样本集总数,否则返回步骤4 8.计算总误差E,E为各样本误差总和并判断E是否满足精度要求,若Ee则学习停止 9.修改权值和阈值,并转到步骤4 10. 贮存,以备预测值的计算 11. 计算未来旅游人口预测值 在网络训练之后,预测的行程时间可由下式求得: 12.对Tt值进行数据处理,用MATLAB对模型进行编程,运行程序(详细程序见附录),即得四川未来的旅游人口的预测结果。 结果为: 年份 2012 2013 2014 2015 2016 预测结果 1049600 1087900 1151500 1170000 1180800 年份 2017 2018 2019 2020 2021 预测结果 1158700 1103700 1144100 1153600 1184000 预测模型的优缺点分析 神经网络预测模型的缺点:由于BP算法是一种梯度收索算法,因此对于高度非线性的问题,常常会使收索陷入局部极小,而不是全局最小,加之在预测模型中未考虑四川旅游点发生的地质灾害等对旅游人数的影响,所以难免会带来一定误差。为了减少误差,可能要对网络进行工作量极大的训练才能实现。 神经网络模型的优点:可以不断的对其进行实时修正。在矿山运输系统中,许多客观条件如路面质量会随时间的推移而变化,因为神经网络具有自学习的功能,所以不断用新数据来训练网络,可以不断更具环境变化来修正预测模型。另外,当训练好网络后,网络的计算则是相当容易而快捷的这对于解决实时调度问题具有极大的好处。 结语 应用人工智能神经网络原理进行人口增长时间模型,能很好地实现实时动态预测。因此,选择最佳网络结构成为网络设计的关键。神经网络模型是实际问题的一种非线性映射。通过大量的样本学习和训练,使这种映射是对该研究对象的旅游人数随增长的最佳逼近。 MATLAB编程 P=1986:1:2011;T=[153464 179442 170753 101250 193926 193900 212600 289900 368000 376700 454700 271300 290600 373400 462000 575000 667000 452000 966200 1062000 1401800 1708730 699500 1049300 849900 1640000 5832100]; % ′创建一个新的前向神经网络′? net_1=newff(minmax(P),[10,1],{tansig,purelin},traingdm) % 当前输入层权值或阈值 inputWeights=net_1.IW{1,1} inputbias=net_1.b{1} % 当前网络层权值或阈值 layerWeights=net_1.LW{2,1} layerbias=net_1.b{2} % 设置训练参数net_1.trainParam.show = 50; net_1.trainParam.lr = 0.05; net_1.trainParam.mc = 0.9; net_1.trainParam.epochs = 10000; net_1.trainParam.goal = 1e-3; % 调用TRAINGDM算法训练BP网

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档