灰色预测模型(原理+例子+Python代码实现)

目录

一、什么是灰色预测

二、GM(1,1)预测模型

一次累加序列

均值生成序列

建立灰微分方程

求解微分方程

三、GM(1,1)模型预测步骤

数据的检验与处理

模型建立

检验预测值

1)相对误差检验

2)级比偏差检验

四、举例分析

题目

建立时间序列:

求级比  ​编辑

GM(1,1)建模

1)对原始数列作一次累加

2)构造数据矩阵 B 及数据向量 Y

3)计算  ​编辑

4)建立模型

5)预测值

6)模型检验

五、代码实现


一、什么是灰色预测

灰色预测主要特点是模型使用的不是原始数据序列,而是生成的数据序列。核心体系是灰色模型(Grey Model,简称GM),对原始数据作累加生成得到近似的指数规律再进行建模。

  •  优点:不需要很多数据,能解决历史数据少、序列的完整性和可靠性低的问题。
  •  缺点:只使用于中短期的预测,只适用于指数增长的预测。

二、GM(1,1)预测模型

GM(1,1)表示模型是1阶微分方程,且只含1个变量的灰色模型。

一次累加序列

参考数据eq?x%5E%7B%280%29%7D%3D%28x%5E%7B%280%29%7D%281%29%2Cx%5E%7B%280%29%7D%282%29%2C%5Ccdot%20%5Ccdot%20%5Ccdot%2Cx%5E%7B%280%29%7D%28n%29%20%29,1次累加生成序列(1-AGO)为:

eq?x%5E%7B%281%29%7D%3D%28x%5E%7B%281%29%7D%281%29%2Cx%5E%7B%281%29%7D%282%29%2C%5Ccdot%5Ccdot%5Ccdot%2Cx%5E%7B%281%29%7D%28n%29%29%3D%28x%5E%7B%280%29%7D%281%29%2Cx%5E%7B%280%29%7D%281%29+x%5E%7B%280%29%7D%282%29%2C%5Ccdot%5Ccdot%5Ccdot%2Cx%5E%7B%280%29%7D%281%29+x%5E%7B%280%29%7D%282%29+%5Ccdot%5Ccdot%5Ccdot+x%5E%7B%280%29%7D%28n%29%29

式中eq?x%5E%7B%281%29%7D%28k%29%3D%5Csum_%7Bi%3D1%7D%5E%7Bk%7Dx%5E%7B%280%29%7D%28i%29%2Ck%3D1%2C2%2C%5Ccdot%5Ccdot%5Ccdot%2Cn

均值生成序列

均值生成序列:eq?z%5E%7B%281%29%7D%3D%28z%5E%7B%281%29%7D%282%29%2Cz%5E%7B%281%29%7D%283%29%2Cz%5E%7B%281%29%7D%284%29%2C%5Ccdot%5Ccdot%5Ccdot%2Cz%5E%7B%281%29%7D%28n%29%29

式中:eq?z%5E%7B%281%29%7D%28k%29%3D0.5x%5E%7B%281%29%7D%28k%29+0.5x%5E%7B%281%29%7D%28k-1%29%2C%20k%3D2%2C3%2C4%2C%5Ccdot%5Ccdot%5Ccdot%2Cn,需要注意的是均值生成序列会比一次累加序列的个数少一。

建立灰微分方程

由于我们实现的是指数增长的预测,所以指数模型对应的数学描述为eq?y%3Da+ce%5E%7Bb%7D,对应的微分方程为一阶常系数微分方程。

eq?%5Cfrac%7Bdx%5E%7B%281%29%7Dt%7D%7Bdt%7D+ax%5E%7B%281%29%7Dt%3Db

求解该微分方程可得到指数型原函数。我们建立对应的灰微分方程:eq?x%5E%7B%280%29%7D%28k%29+az%5E%7B%281%29%7D%28k%29%3Db%2C%20k%3D1%2C2%2C3%2C%5Ccdot%5Ccdot%5Ccdot%2Cn

求解微分方程

我们对微分方程两边同时积分得到:

eq?%5Cint_%7Bk-1%7D%5E%7Bk%7D%5Cfrac%7Bdx%5E%7B%281%29%7Dt%7D%7Bdt%7Ddt+%5Cint_%7Bk-1%7D%5E%7Bk%7Dax%5E%7B%281%29%7D%28t%29dt%3D%5Cint_%7Bk-1%7D%5E%7Bk%7Dbdt

等式的右边为b,主要就是对等式左边的两个定积分进行分析。

eq?%5Cint_%7Bk-1%7D%5E%7Bk%7D%5Cfrac%7Bdx%5E%7B%281%29%7D%28t%29%7D%7Bdt%7Ddt%3Dx%5E%7B%281%29%7D%28k%29-x%5E%7B%281%29%7D%28k-1%29%3Dx%5E%7B%280%29%7D%28k%29

我们分析第一个定积分可以发现,该定积分就是一次累计序列的第K项和第K-1项相减,最后得到原始数据的第K项。

接下来分析第二个定积分:

eq?%5Cint_%7Bk-1%7D%5E%7Bk%7Dax%5E%7B%281%29%7D%28t%29dt%5Capprox%20a%5Cfrac%7Bx%5E%7B%281%29%7D%28k%29+x%5E%7B%281%29%7D%28k-1%29%7D%7B2%7D1%3Daz%5E%7B%281%29%7D%28k%29

这里我们可以看到,我们没有办法直接求出该定积分,因为我们需要对下x(t)进行积分,而我们需要的就是一个x(t)的原函数,这就相当于自己证自己。所以我们这里采用定积分的几何意义:梯形面积。通过求取梯形面积来近似的逼近原函数。而第K-1和第K个序列之间的梯形的面积就是均值生成序列。

8b9e771ca2124a28967d864b6927a175.png

此时我

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值