灰色预测模型代码_[建模教程] 不看会后悔系列——灰色预测的建模应用

3472b381eec74bb1441675df4a4ce53c.gif

 可以好不夸张的说灰色预测是所有新人爱用的,老生也爱用的,同时也是最基本的最简单的预测算法,原理简单的没话说。       再说一下它的作用,虽然吧...这个东西原理很简单,但是耐不住人家适用范围广啊,效果虽然不是90%的准确率,但是59%的话差不多还是可以的。        但是我还是觉得有必要说一下这个东西,帮助那些第一次用的时候注意一些细节问题,比如范围和结果分析别一顿还夸...:        首先介绍一下灰色预测:        灰色系统理论认为:系统的行为现象尽管是朦胧的,数据是复杂的,但它毕竟是有序的,是有整体功能的。建立灰色预测模型之前,需要对原始时间序列进行数据处理,进过预处理的数据系列称为生成列。对原始数据进行预处理,不是寻求它的统计规律和概率分布,而是将杂乱无章的原始数据列通过一定的方法处理,变成有规律的时间序列数据,即以数找数的规律,再建立动态模型。灰色系统常用的数据处理方式有累加和累减,通常我们用累加。       灰色预测通过鉴别系统因素之间发展趋势的相异性,对原始数据进行生成处理来寻求事物的未来发展趋势。诸多的灰色模型中,以单序列一阶线性微分方程模型GM(1,1)模型最为常用。下面简要的介绍一下:       (1)累加生成(AGO)         设原始数列为x(0)=(x0(1),x0(2),….x0(n)),令 ; 

x(1)(k)=∑i=1kx(0)(i),k=1,2,...,n

x(1)=(x1(1),x1(2),….x1(n))

(2)建立微分方程模型                                                  

dx(1)(t)dt+ax(1)(t)=b

7b397ad4586aee931aa1ef90d03e7980.png

(3)对累加生成数据做均值生成 B 与常数项 向量Y        5860a2c523c1d66a8aaf15a93bfb3975.png(4)最小二乘法求解灰色参数   eaee36f9f5ca38bfe49c96f7773fd0dd.png 则令该参数为 c ,令k =t               c

=[ab]=(BTB)−1BTY

  + x9 W  d- h+ \6 g4 u2 K- i: N% T; C(5)参数代入微分方程,解得                    

x^(1)(k+1)=(x(0)(1)−ua)e−ak+ua,k=1,2,...,n−1

(6)对函数表达式进行离散将二者做差来还原原序列                             

x^(0)(k+1)=x^(1)(k+1)−x^(1)(k),k=1,2,...,n−1

                 (7)对模型进行检验1.计算原序列与预测序列的残差 e 和相对误差 q; 2. 求原始序列的均值和方差S15 M$ j$ q' W3 J/ E3 V6 ?3.区域残差 e 的均值及方差S2. M# ~: K% p; g; F8 o4.计算方差比 C=S2/S15.求小误差概率 P6.精度检验表如下:8 B0 Y. w% \* g1 V9 G3 C

5387d48334ee267231cb97a873d855be.png

/ v6 F! w$ Q; |; _% e  h% @6 y8 V* W; E5 j- ]

1b49759b483829182e4647a62b66b389.png

代码的话百度我也帮你们准备好了:图片格式,自己抄去f61e1c2be82c7e396f22f5df1e3742e7.png% m! k" ^" c! ]e72bc8a7cb6df829b7f782bcc9439e62.png

49ca236773c3fb474aa0c4b8c580baff.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值