灰色预测(GM)的MATLAB实现

GM简介

1. 灰色系统的定义:

灰色系统指既含有已知信息又含有未知信息的系统。

2. 灰色预测模型的定义:

对灰色系统进行预测的模型。
灰色模型(Grey Model,简称GM模型)一般表达方式为GM(n,x)模型,其含义是:用n阶微分方程对x个变量建立模型。

3. 灰色预测模型的目的:

通过把分散在时间轴上的离散数据看成一组连续变化的序列,采用累加和累减的方式,将灰色系统中的未知因素弱化,强化已知因素的影响程度,最后构建一个以时间为变量的连续微分方程,通过数学方法确定方程中的参数,从而实现预测目的。

4. 灰色预测模型的特点:

无需大量数据样本,短期预测效果好,运算过程简单。
数据必须是线性,要是非线性的话,它也会给你化成线性,就起不到预测的效果,预测出来都是错的。

5. 灰色预测模型的缺点:

对非线性数据样本预测效果差。


GM

1. 数列生成

(1)累加生成
生成列的数据 B(i) = A(1) + A(2) + … + A(i)

一般(90%的情况)做一次累加就可以了,有个别情况需要做多次累加

(2)累减生成
A(0)=0
B(i) = A(i) - A(i-1)
累减是累加的逆运算,累减可将累加生成列还原为非生成列,在建模中获得增量信息

(3)均值生成
紧邻生成数:C(i) = a*B(i) + (1-a)*B(i-1)
紧邻生成均值数:C(i) = [ B(i) + B(i-1) ] / 2

2. GM(1,1) model

(1)灰微分方程模型

A ( i ) + a ∗ C ( i ) = b A(i) + a*C(i) = b A(i)+aC(i)=b

A(i) :原始序列,一般称为灰导数
C(i):一次均值生成序列
a:发展系数
b:灰作用量

(2)白化模型

d x / d t + a x ( t ) = b dx/dt+ax(t)=b dx/dt+ax(t)=b

x(t):一次累加序列

(3)求解

最小二乘法
c = [ a , b ] ′ c = [a,b]' c=[a,b]
c = ( B ′ ∗ B ) − 1 ∗ B ′ ∗ Y c=(B'*B)^{-1}*B'*Y c=(B

  • 11
    点赞
  • 106
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值