《2002高教社杯全国大学生数学建模竞赛题目.pdf》由会员分享,可在线阅读,更多相关《2002高教社杯全国大学生数学建模竞赛题目.pdf(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、20162016 江西财经大学数学建模竞赛江西财经大学数学建模竞赛(A A 题、题、B B 题或题或 C C 题)题)论文题目论文题目参赛队员参赛队员: : 袁宇超、於江池、陈宏宇袁宇超、於江池、陈宏宇参赛队编号:参赛队编号:2016021201602120162016 年年 5 5 月月 2020 日日55 月月 2525 日日20162016 江西财经大学数学建模竞赛江西财经大学数学建模竞赛承承诺诺书书我们仔细阅读了江西财经大学数学建模竞赛的竞赛章程。我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人研究、讨论与赛题有关的问题。我们知道,抄袭别
2、人的成果是违反竞赛规则的, 如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。如有违反竞赛规则的行为,我们将受到严肃处理。我们参赛选择的题号是(从 A/B/C 中选择一项填写):C我们的参赛队编号为2016021参赛队员 (打印并签名) :队员 1. 姓名袁宇超专业班级软件工程 144队员 2. 姓名於江池专业班级管理科学与工程类 142队员 3. 姓名陈宏宇专业班级管理科学与工程类 142日期: 2016年 5 月 25日20162016 江西财经大学数学建模竞
3、赛江西财经大学数学建模竞赛编号和阅卷专用页编号和阅卷专用页参赛队编号:2016021参赛队员姓名所有数学类与计算机类课程成绩(意愿参加全国竞赛者填写)高等数学 I 96 C 语言 84 C+ 89高等数学 II 92数据结构 91袁宇超线性代数 97离散数学 84数据库系统原理 98操作系统 91计算机组成原理 98是是是否选修建模课程是否愿参加全国竞赛在校获奖项目大学生职业技能竞赛沙盘模拟校赛一等奖、省赛一等奖、蓝桥杯省三等奖等微积分 I 78微积分 II 78於江池线性代数(工)84计算机应用技术 84C 语言程序设计 87程序设计实训 85微积分 I 94微积分 II 97陈宏宇线性代数
4、(工)90计算机应用技术 82程序设计实训 89 C 语言程序设计 96面向对象程序设计(双语) 77是是是是评分(百分制)阅卷填写,参赛者不得填写最 终 得 分阅卷专家评语评阅人小组评价负责人1、是否选修数学建模:指本学期是否选修了数学建模课程备注2、是否有意愿参加全国竞赛:指参加今年的全国大学生数学建模竞赛,一经选定,不得退赛,否则将建议学生所在学院给予处分。培训时间:2016 年 8 月 5 日开始。江西财经大学数学建模竞赛组委会江西财经大学数学建模竞赛组委会20162016 年年 5 5 月月 1515 日制定日制定基于时间序列和神经网络的上证指数走势预测模型摘要随着经济的发展,人们生
5、活水平的提高,人们不再为衣食住行而忧心。有更多的闲散资金用于投资,股票,一种高风险高收益的债券成为越来多人的选择。然而股票市场风云莫测,谁也无法完全准确的预测出未来走势,但做出基本的预测确是必须的。本文采用了指数平滑法, 自回归移动模型及神经网络模型, 对股票的未来走势做出了基本预测。由于我们选用的数据为 2015-01-04 至 2016-04-01 的 2731 个收盘价数据,数据量庞大,三个模型预测值与实际值在图表上肉眼看去,几乎一致。但采用移动平均法的 RMSE=85.2756,采用一次指数平滑法的 RMSE=56.107,采用 ARIMA 模型 RMSA=55.583,采用神经网络模
6、型的 RMSE=11.1739.。 这些模型的误差逐渐缩小, 到了神经网络模型模型,预测值与真实值的误差已经控制到了(-20,20)的区间之内,误差较小,在可接受的范围以内,我们认为这个模型在未来不发生重大事故如天灾人祸,股民心里发生天翻地覆的变化,国家政策突然调整等的情况下能较好的预测未来的结果,我们通过软件模拟,做出了未来一月的预测结果,股价略微上升,但变动幅度不大。考虑到当前的市场和 2009 年都经历了快速上涨之后的调整,加上对未来多天的预测结果,我们最终认为股票在经过这次起伏之后将会趋于平稳状况,虽然当前处于下滑阶段,但通过对长期时间的走势预测, 股票在不经历政策及股民心理等市场干预
7、的条件下, 股价将维持在 3026这个点数上下波动,且波动频率集中在(-20,20)之间,见附录预测结果。关键词:时间序列BP 神经网络上证指数误差分析预测1一、 问题重述随着我国日渐成为 21 世纪最重要的国家,国内股票市场的波动,不仅牵动亿万投资者的心弦,也为世界所瞩目。先看两张上证综指的大盘走势图:将第一张 2014 年 1 月-2016 年 3 月的上证综指与第二张 2005 年 1 月-2010 年 12 月份的上证综指进行对比,发现当前的市场和 2009 年都经历了快速上涨之后的调整,估值也都已经处于历史中等偏低水平。注意到与 2009 年相同的以稳增长为主的政策环境、同样曾经历了
8、大宗商品较大幅度的下跌、投资者关于人民币汇率贬值及经济前景偏于悲观的类似预期,有人认为:“当前市场状况类似迷你版 2009”。我们将用上证综指 2005 年 1 月以来的逐日数据(参见附件)建模,从市场走势角度考证上述的“历史类似性”,并据此对未来一周及未来一月的上证综指走势作出预判。二、 问题分析股票市场作为经济的晴雨表,想要准确考证当下市场状况是否存在 2009 年的历史类似性,离不开对当前股市走向的分析。股市的可预测性问题与市场有效性假说密切相关。如果有效市场假说成立,股票价格充分反映了所有相关的信息,价格变化服从随机游走,股票价格的预测将毫无意义。从中国股票市场的特征来看,大多数学者的
9、结论只吃中国的股票市场尚未达到弱势有效,也就是说,中国股票市场的股票价格时间序列并非序列无关,而是序列相关的,即历史数据对股票的价格形成作用。因此,可以通过对历史数据的分析预测股票价格的走势。2三、 模型假设1.假设所给数据完全正确。2.假设市场行为涵盖一切,即影响股票价格波动的各种因素(如上市公司的业绩改善,主力的意图,投资者的心理倾向,消息面或材料面的影响)都会被市场行为本身充分表现出来。3.假设价格依据趋势运动,即价格具有一定的趋势,上升趋势,盘整趋势,下降趋势,且在没有某种因素导致趋势变化的情况下,这种趋势会延续下去。4.假设历史会重演,每一根 k 线,每一天的成交量,图表,数据实际上
10、是大众心理的真实反映,股票市场的走势正是真是这种共通的人类心理的反映,历史会在股票市场中不断的重复。四、符号系统i(i 1,2, p)p,qt实际观察值,t=1,2,.,n时间 t 观察值的一次指数平滑值时间序列的平滑指数,0 1t+1 期预测值自回归模型系数自回归模型的阶数2均值 0,方差为的白噪声序列t为误差模型的待定系数平稳时间序列误差函数计算精度值最大学习次数输出层的各神经元的偏导数隐含层各神经元的偏导数权值输入信号神经元 K 的权值线性组合结果j( j 1,2,q)yteMo(k)h(k)who(k)x1,x2,xpwk1,wk2,wkp pukMSE 为均方误差RMSE 为均方根误
11、差k为阀值,()为激励函数,yk为神经元k的输出3五、股指预测模型构建5.1 时间序列预测模型的构建5.1.1 模型准备之时间序列所谓时间序列,就是指观察或记录到的一组按时间顺序排列的数据。序列包含了产生该序列的系统的历史行为的全部信息。根据系统有限长度的运行记录(观察数据),然后分析它随时间的变化趋势,建立能够比较精确地反映时间序列中所包含的动态依存关系的数学模型,并借以外推预测目标的未来值。5.1.2 移动平均移动平均法是将观察期的数据,按时间先后顺序排列,然后由远及近、以一定约跨越期进行移动平均,求得平均值。每次移动平均总是在上次移动平均的基础上,去掉一个最远期的数据、增加一个紧挨跨越期
12、后面的新数据,保持跨越期不变,每次只向前移动一步,逐项移动,滚动前移。 Mt(1)=错误!未找到引用源。这里取时间跨度为 5 天,因此M (1.5) 。下图是收盘价的 5 日移动平均线与实际收盘价的对照图:4由于数据量较大,故看上去两者之间拟合度较好,但实际上,由均方误差统计 MSE 及均方根误差1nMSE (observedi-predictedi)2ni1RMSE MSE计算得MSE5 7271.929333RMSE5 85.27560808同样,我们用 10 日,15 日,30 日,半年等为时间周期进行时间序列的拟合,效果同样较差。分析猜想,这是因为在观察期的每一个数据其所包含的信息量或
13、者是对当前预测值的贡献值不同,时间离当前越近所包含的信息量应该越多,贡献值应当越大。故如下对移动平均各观测值进行赋权,来体现不同时期观测值的信息量,以减小误差。5.1.3 指数移动平均在实际经济活动中,最新的观察值往往包含着最多的关于未来情况的信息。所以更为切合实际的方法是对各期观察值依时间顺序加权。指数平滑法正是适应于这种要求, 通过某种平均方式, 消除历史统计序列中的随机波动,找出其中的主要发展趋势。这实际上就是一种带权重的移动平均法。-实际观察值,t=1,2,.,n-时间 t 观察值的一次指数平滑值-时间序列的平滑指数,0错误!未找到引用源。1-t+1 期预测值由上式看出:指数平滑法是以
14、首项系数为 ,公比为(1 一 )的等比数列作为权数的加权平均法。体现了“近重远轻”的赋权原则。各权数之和为 1。预测值是前一期预测值加上前期预测值中产生的误差的修正值。由预测模型可见, 起到一个调节器的作用。如果 值选取得越大,则越加大当前数据5的比重,预测值受近期影响越大;如果 值选取得越小,则越加大过去数据的比重,预测值受远期影响越大。 因此, 值大小的选取对预测的结果关系很大。 如何选取 值呢?通常 值的选取类似于移动平均法中对 N 的选取,即多选几个 值进行试算,选择使预测误差小的 值。这里免去上述复杂的做法,使用 spss 自动寻找最适值,预测了未来一个月即 4 月份的上证走势,并作
15、出如下预测图(预测结果见附录一):从图中曲线可以看出预测值很好的将真实值覆盖,通过误差分析计算得出RMSE=56.107,相比之前拟合效果有了很大的提高,但为了寻找更好的预测结果,继续在时间序列的基础上建立ARIMA模型。5.2 ARIMA模型的构建5.2.1模型准备之ARIMA模型全称为自回归积分滑动平均模型(Autoregressive Integrated Moving Average Model,简记ARIMA), 是由博克思(Box)和詹金斯(Jenkins)于70年代初提出一著名时间序列预测方法1,所以又称为box-jenkins模型、博克思-詹金斯法。其中ARIMA(p,d,q)
16、称为差分自回归移动平均模型,AR是自回归,p为自回归项;MA为移动平均,q为移动平均项数,d为时间序列成为平稳时所做的差分次数。所谓ARIMA模型,是指将非平稳时间序列转化为平稳时间序列,然后将因变量仅对它的滞后值以及随机误差项的现值和滞后值进行回归所建立的模型。ARIMA模型根据原序列是否平稳以及回归中所含部分的不同,包括移动平均过程(MA)、自回归过程( AR)、自回归移动平均过程( ARMA)以及ARIMA过程。5.2.1.1 自回归模型AR(p)P 阶自回归模型记作AR(p) ,满足下面的方程:6yt c1yt12yt2pytptt 1,2,T0其中:参数c为常数,1,2,2方差为的白
17、噪声序列。5.2.1.2移动平均模型MA(q)q 阶移动平均模型记作MA(q),满足下面的方程: p是自回归模型系数;P为自回归模型的阶数;t是均值0,yttc1ti2t2qtqt 1,2,T0,,q其中:参数C为常数;12是自回归模型系数; q为自回归模型的阶数;t是均值为20,方差为的白噪声序列。5.2.1.3自回归移动平均模型ARMAp,q一般性的自回归移动平均模型记作,满足下面方程yt1yt12yt2t1t12t2qtq其中,P为自回归模型的阶数i(i 1,2, p)为模型的待定系数;q为模型的阶数j( j 1,2,q)y为莫醒醒的待定系数;t为误差,t为平稳时间序列;显然此模型是AR
18、(p)和MA(q)的混合形式, 称为混合模型, 常记作ARMAp,q。当p 0时,ARMA(0,q) MA(q); 当q 0时,ARMA(p,0) AR(p)。5.2.1.4 自回归求和移动平均模型ARIMA(d, p,q)对于单整序列能够通过d次差分将非平稳序列转化为平稳序列。5.2.2模型分析平稳性检验一般我们有三个步骤:时序图初步确定它的走向,如果没有明显的上升或者下降,就说明它可能是平稳的;再对序列作的相关分析,判断该序列是否为平稳的非白噪声序列;最后再作单位根检验,最终确定序列的平稳性。若为非平稳序列,对该序列进行处理使其符合ARMA模型建模条件即处理后的序列式平稳的白噪声。 一般如
19、果序列不满足平稳性条件,可以通过差分变换(单整阶数为d, 则进行d阶差分)其他变换, 如对数差分变换使序列满足平稳性条件;首先做时序图:ARMAp,q7光凭肉眼并不能从时序图中看出上证指数的未来走向,只能看出从 2005 年 1 月开始至今的 2732 个股票工作日的市场内有两次剧烈如过山车似的涨幅: 一次是 2006 年开始之后的 400 天左右的时间内,也就是到2007 年末,股票从1200 多点开始急剧增长,最终突破 6000 大关。但紧接着却在一年之内又重新跌至2000 点。另一次就是在图中显示的以 2005 年元旦为起点的的 2400 天左右开始,股票又在一年不到时间内从 2000
20、点附近飙升过 5000 点,但同样好景不长,之后到现在,不到一年时间,股票一直处于下跌趋势,先今已跌至 3000 点,但是否还会继续下跌,出现更大的跌幅,还需进一步分析。下面通过对上证指数 2732 天收盘价序列做相关性分析,得出如下自相关残差 ACF 和残差偏自相关残差 PACF图:从图中可以看出,序列的自相关图(ACF)和偏自相关(PACF)都是拖尾的,说明序列是非平稳的,故对其进行一阶差分来提高数据的平稳性。8从图中可以知道,差分序列基本均匀分布在0 刻度上下两侧,因此可以认为差分序列是平稳的。接下来,继续查看差分序列的 ACF 和 PACF 图:9从图中可以看出,序列的自相关图(ACF
21、)和偏自相关(PACF)都是拖尾的,说明序列是非平稳的,故对其进行一阶差分来提高数据的平稳性,结果如下图:此时发现, 差分序列基本均匀分布在 0 刻度上下两侧, 因此可以认为差分序列是平稳的。接下来,继续查看差分序列的 ACF 和 PACF图:10模型。经过反复试验,最终确立p=4,q=4,此时的残差序列的分析图如下:由图可知,差分序列的ACF和PACF都是拖尾的,因此可对原序列建立ARIMA (p, 1,q)11可以看出都是平稳的,因此 ARIMA(4,1,4)是合理的。ARIMAARIMA模型參數模型參數收盘价-模型_1收盘价無轉換常數AR落後 1落後 2落後 3落後 4差異MA落後 1落
22、後 2落後 3落後 4DAY , not periodic無轉換分子落後 0估計1.675-.137-.136-.207.5721-.176-.094-.268.494-.001SE2.445.155.119.130.121T.685-.887-1.140-1.5924.743顯著性.493.375.255.112.000.161.126.129.129.002-1.094-.747-2.0683.829-.489.274.455.039.000.625Xt=0.572Xt1+t-0.494t经计算,此时的 RMSA=55.583模型適合度模型適合度適 合 度 統 計資料平穩 R 平方R 平方
23、RMSEMAPEMaxAPEMAEMaxAE標準化 BIC平均數.009.99755.7861.2429.77234.907352.6118.049最小值.009.99755.7861.2429.77234.907352.6118.049最大值.009.99755.7861.2429.77234.907352.6118.0495.009.99755.7861.2429.77234.907352.6118.04910.009.99755.7861.2429.77234.907352.6118.04925.009.99755.7861.2429.77234.907352.6118.049百分位數5
24、0.009.99755.7861.2429.77234.907352.6118.04975.009.99755.7861.2429.77234.907352.6118.04990.009.99755.7861.2429.77234.907352.6118.04995.009.99755.7861.2429.77234.907352.6118.04912放大原图:13可以从图中看出,整体上的拟合效果还是比较好的,包括预测值内的所有数据都处于置信区间内。且过票整体具有下滑趋势,但是下滑趋势不明显。下面给出预测的未来一个月即从 2016 年 4 月 1 日开始的整个四月份的数据的数据(LCLUCL
25、为置信区间):模型收盘价-模型_1預測UCLLCL27333007.4003116.3892898.41027403014.7423344.0282685.45727473013.9233480.0732547.77227343016.1713173.3092859.03327413011.7333364.0722659.39527483012.5413494.8922530.19027353018.4723209.1732827.77027423014.8423389.1662640.51727493010.3883508.8402511.93627363014.2093236.808279
26、1.61027433015.9763409.6492622.30427503011.3683525.6512497.08627373011.0883265.0292757.14727443013.8953426.3782601.41127513011.9053540.9842482.82527383016.2713298.7592733.78327453011.2953442.5392580.05127523010.9803554.4812467.47927393017.8163324.0322711.60127463013.1093462.6092563.6085.3 BP 神经网络预测模型
27、的构建5.3.1 模型准备之 BP 神经网络神经网络实际上就是一种模仿人的大脑而产生出的一种模型,它反映了人脑功能的许多基本特性,但他并不是人脑的神经网络系统的真实写照,而是经过某种简化、抽象和模拟,由大量的同时也是很简单的处理单元广泛的互相连接而形成的复杂网络结构。下图就是简单的神经元模型:14用数学表达式可表示为:j1其中x1,x2,xp为输入信号, wk1,wk2,xkp为神经元k的权值,uk为线性组合结果,k为阀值,()为激励函数, yk为神经元k的输出。Rumelhart, McClelland于1985年提出了BP网络的误差反向后传BP(Back Propagation)学习算法。
28、BP 算法基本原理就是利用输出后的误差来估计输出层的直接前导层的误差, 再用这个误差估计更前一层的误差, 如此一层一层的反传下去, 就获得了所有其他各层的误差估计。5.3.2 构建 BP 神经网络的步骤第一步,网络初始化给各连接权值分别赋一个区间(-1,1)内的随机数,设定误差函数e,给定计算精度值和最大学习次数 M。第二步,随机选取第 k 个输入样本及对应期望输出x(k) x1(k),x2(k),xn(k)do(k) d1(k),d2(k),dq(k)第三步,计算隐含层各神经元的输入和输出pukwkjxj,vk ukk,yk(vk)hih(k) wihxi(k)bhi1nh 1,2, pho
29、h(k) f(hih(k)ph1h 1,2, pqyio(k) whohoh(k)boo 1,2,15yoo(k) f(yio(k)o 1,2,q第四步,利用网络期望输出和实际输出,计算误差函数对输出层的各神经元的偏导数o(k)。ee yiowhoyiowhoyio(k)who(whohoh(k)bo)hpwho hoh(k)1q(do(k) yoo(k)2e2o1 (k) (do(k) yoo(k)yooyioyio (do(k) yoo(k)f (yio(k)o(k)第五步,利用隐含层到输出层的连接权值、输出层的o(k)和隐含层的输出计算误差函数对隐含层各神经元的偏导数h(k)。ee yi
30、o o(k)hoh(k)whoyiowhoeehih(k)wihhih(k)wihhih(k)wih(wihxi(k)bh)i1nwihq xi(k)ehih(k)(1(do(k) yoo(k)2)hoh(k)2o1hoh(k)hih(k)1q(do(k)f(yio(k)2)hoh(k)2o1hoh(k)hih(k)p1q(do(k)f(whohoh(k)bo)2)hoh(k)2o1h1hoh(k)hih(k)16 (do(k) yoo(k)f (yio(k)whoo1qhoh(k)hih(k) (o(k)who)f (hih(k)o1qh(k)第六步,利用输出层各神经元的o(k)和隐含层各神
31、经元的输出来修正连接权值who(k)ewho(k) o(k)hoh(k)whoN1Nwho whoo(k)hoh(k)第七步,利用隐含层各神经元的h(k)和输入层各神经元的输入修正连接权。eehih(k)wih(k) h(k)xi(k)wihhih(k)wihN1Nwih wihh(k)xi(k)第八步,计算全局误差1mqE (do(k) yo(k)22mk1 o1第九步,判断网络误差是否满足要求。当误差达到预设精度或学习次数大于设定的最大次数,则结束算法。否则,选取下一个学习样本及对应的期望输出,返回到第三步,进入下一轮学习。在这里,我们通过建立三层结构的神经网络:输入层( Input),三
32、个隐含层( Layer),输出层(Output)。在训练之前,为了提高网络的运算速度以及为了减少误差,首先对数据进行归一化处理,然后在进行训练。通过不断调整神经元个数,及隐含层的个数等参数,得到一个训练结果较好的神经网络之后,再在用预测数据进行预测。预测之前也先将预测数据归一化处理,之后再对预测结果进行反归一化处理。最后建立的 BP 神经网络结构为:三个隐含层结构,其中隐层第一层节点数设置为 20,隐层第二层设置为40,隐层第三层设置为一维。175.3.3 BP 神经网络模型预测及结果最终由通过 matlab 编制程序对 BP 神经网络进行实现(代码见附录二),首先用前一天的收盘价作为输入,后
33、一天的收盘价为输作为网络的学习资料进行学习。得到的预测值与真实值之间的比较如下图所示:从图形上看,采用的网络结构对上证收盘指数的预测效果较好,预测值和真实之之间比较接近。下面对图形经过放大如下:18由此可以清晰的看到神经网络对未来一个月上证指数的预测的走势误差分析通过计算得出 RMSE=11.1739,远小于之前时间序列分析模型。进一步通过作图,画出误差情况图如下:19从图中可以看出,2005 年至今的 2700 多个股票开盘日中,除了 2007 年和 2009 年的两个年度出现达到斤 5060 的误差外,其余时刻股票的预测值与真实值之间的误差范围基本集中在集中在(-20,20)区间内。考虑到
34、 09 年的股票市场与当下的诸多相似之处:20当前的市场和 2009 年都经历了快速上涨之后的调整,加上对未来多天的预测结果,我们最终认为股票在经过这次起伏之后将会趋于平稳状况,虽然当前处于下滑阶段,但通过对长期时间的走势预测,股票在不经历政策及股民心理等市场干预的条件下,股价将维持在 3026 这个点数上下波动,且波动频率集中在(-20,20)之间。六、模型的评价与应用1.优点1)通过对原文题建模并进行误差检查,一步步寻找最优预测模型,得到的模型越来越准确。2)引入较为先进的机器学习中的算法,使得预测性能有了更进一步的提高。212.缺点1)考虑因素不够全面,如bp 神经网络模型只考虑收盘价所
35、产生的影响,而未涉及收盘价等因素的学习。2)时间因素没有继续对模型进行优化找出更佳预测效果的模型。3)模型只能从技术层面上进行分析,而实际上,再好的技术分析也抵不过股民的心理及市场的政策。七、 参考文献1: 刘成竹.基于时间序列和神经网络的股票指数预测预测研究.华中师范:2009;2: 萧铁树数学实验北京:高等教育出版社,1996;3:时间序列在上证综指预测中的应用.东华理工大学;八、附录一指数平滑法预测结果模型收盘价-模型_1預測UCLLCL27333009.5303119.5462899.51427343009.5303165.1142853.94527353009.5303200.080
36、2818.97927363009.5303229.5582789.50127373009.5303255.5292763.53127383009.5303279.0082740.05227393009.5303300.6002718.46027403009.5303320.6962698.36327413009.5303339.5722679.48827423009.5303357.4242661.63527433009.5303374.4052644.65527443009.5303390.6292628.43127453009.5303406.1902612.86927463009.530
37、3421.1642597.89627473009.53027483009.53027493009.53027503009.53027513009.53027523009.53027533009.530223435.6122583.4483449.5852569.4753463.1282555.9313476.2792542.7813489.0692529.9913501.5262517.5333513.6762505.383二、BP 神经网络预测及误差分析function BP(p,t)pn,minp,maxp,tn,mint,maxt=premnmx(p,t);%将数据归一化NodeNum1
38、 =20; % 隐层第一层节点数NodeNum2=40;% 隐层第二层节点数TypeNum = 1;% 输出维数TF1 = tansig;TF2 = tansig;TF3 = tansig;net=newff(minmax(pn),NodeNum1,NodeNum2,TypeNum,TF1 TF2 TF3,traingdx);%网络创建 traingdmnet.trainParam.show=50;net.trainParam.epochs=50000; %训练次数设置net.trainParam.goal=1e-5; %训练所要达到的精度net.trainParam.lr=0.01;%学习速
39、率net=train(net,pn,tn);ptest=p;for i=1:20 p2n=tramnmx(ptest,minp,maxp); %测试数据的归一化 an=sim(net,p2n); a=postmnmx(an,mint,maxt) ; %数据的反归一化 ,即最终想得到的预测结果 ptest=ptest a(end);endplot(1:length(t),t,-,1:length(t)+19,a,-);%plot(1:length(t),t,*,1:length(t)+19,a,o);title(- -表示预测值- -表示实际值)%title(o 表示预测值- *表示实际值)grid onerror=t-a(1,1:2731);%误差向量figureplot(1:length(error),error,-.)title(误差变化图)grid on2324