灰色预测总结
统计专业实验-实验9-灰色预测分析
基本操作,完全同上。
结果如下:
表三
1
1761
1761
1761
1761
0.0000
0.0000
2
2187
3948
3640.866
1879.866
307.1343
14.0436
3
2642
6590
5468.821
1827.955
814.0451
1461.077
741.0772
102.9274
12
554
20112
19808.35
1420.73
866.7302
156.4495
13
463
20575
21189.85
1381.497
918.4974
198.3796
14
682
21257
22533.19
1343.348
661.3480
96.9718
15
基本操作:
1.在Excel中输入数据;
2.计算累加数列X(1)
3.计算Z(1)(k)=-1/2*(X(1)(k-1)+X(1)(k)),k=2,3,4,5,6,7,8,9,10,11,12;
由灰微分方程
4.计算系数μ和a:
利用INTERCEPT和SLOPE函数分别计算μ,a;得到a=-0.1305,μ=403.7423
8760.366
1450.392
46.8121
3.3352
11
1661.23
10494.03
10412.94
1652.574
灰色预测法GM(1,1)总结
灰色预测模型一、灰色预测的概念1. 灰色预测法是一种对含有不确定因素的系统进行预测的方法。
灰色系统是介于白色系统和黑色系统之间的一种系统。
灰色系统内的一部分信息是已知的,另一部分信息时未知的,系统内各因素间具有不确定的关系。
2. 灰色预测,是指对系统行为特征值的发展变化进行的预测,对既含有已知信息又含有不确定信息的系统进行的预测,也就是对在一定范围内变化的、与时间序列有关的灰过程进行预测。
尽管灰过程中所显示的现象是随机的、杂乱无章的,但毕竟是有序的、有界的,因此可以通过对原始数据进行生成处理来寻找系统变动的规律,生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物未来发展趋势的状况。
灰色预测是利用这种规律建立灰色模型对灰色系统进行预测。
二、灰色预测的类型1. 灰色时间序列预测;即用观察到的反映预测对象特征的时间序列来构造灰色预测模型,预测未来某一时刻的特征量,或达到某一特征量的时间。
2. 畸变预测;即通过灰色模型预测异常值出现的时刻,预测异常值什么时候出现在特定时区内。
3. 系统预测;通过对系统行为特征指标建立一组相互关联的灰色预测模型,预测系统中众多变量间的相互协调关系的变化。
4. 拓扑预测;将原始数据作曲线,在曲线上按定值寻找该定值发生的所有时点,并以该定值为框架构成时点数列,然后建立模型预测该定值所发生的时点 三、GM (1,1)模型的建立 1. 数据处理为了弱化原始时间序列的随机性,在建立灰色预测模型之前,需先对原始时间序列进行数据处理,经过数据处理后的时间序列即称为生成列。
i. 设()()()()()()()()(){},,, (00000)123X X X X X n = 是所要预测的某项指标的原始数据,计算数列的级比()()()(),,,,()00123X t t t n X t λ-==。
如果绝大部分的级比都落在可容覆盖区间(,)2211n n ee-++内,则可以建立GM(1,1)模型且可以进行灰色预测。
第七章 灰色预测法
Yn ( X ( 0) (2), X ( 0) (3), X ( 0) (4),, 通最小二乘法求出 模型中两个参数 , ˆ ( B T B) 1 B T Yn a
5.将求出的参数代入微分 方程并求解 可得如下对一次累加序 列的预测模型:
(3), X
(1)
( 0)
( N )}
2.对原始序列作一次累加 生成X (1) X
(1)
{ X (1), X (2),, X (n)}
(1) (1) (1) k (0)
其中: X (k ) X
i 1
(i ) X (k 1) X
(1)
(0)
(k )
X (1) X
(1)
ç3 0.739411 0.632479 0.726354 1 0.789305 0.682872 0.630645
18
3.求关联度
1 n r0 k 0 k (t ) n t 1
例见Excel操作:
19
例5:求联度:
1 2 3 4 5 6 7 Ø Á ¹ ª ¶ È
ç1 0.475806 0.450157 0.621756 0.746231 0.826601 0.478729 0.335606 0.562126
试建立GM(1,1)模型并进行预测.
29
第一步:作一次累加生成(AGO):
设一次累加生成序列 X (1) X (1) { X (1) (1), X (1) (2), X (1) (3), X (1) (4), X (1) (5)} 其中: X (1) (k ) X ( 0) (i ) X (1) (k 1) X ( 0) (k )
i 1 k
(整理)灰色预测法-
第7章 灰色预测方法 预测就是借助于对过去的探讨去推测、了解未来。
灰色预测通过原始数据的处理和灰色模型的建立,发现、掌握系统发展规律,对系统的未来状态做出科学的定量预测。
对于一个具体的问题,究竟选择什么样的预测模型应以充分的定性分析结论为依据。
模型的选择不是一成不变的。
一个模型要经过多种检验才能判定其是否合适,是否合格。
只有通过检验的模型才能用来进行预测。
本章将简要介绍灰数、灰色预测的概念,灰色预测模型的构造、检验、应用,最后对灾变预测的原理作了介绍。
7.1 灰数简介7.1.1 灰数一棵生长着的大树,其重量便是有下界的灰数,因为大树的重量必大于零,但不可能用一般手段知道其准确的重量,若用⊗表示大树的重量,便有[)∞∈⊗,0。
是一个确定的数。
海豹的重量在20~25公斤之间,某人的身高在1.8~1.9米之间,可分别记为 []25,201∈⊗,[]9.1,8.12∈⊗ 4. 连续灰数与离散灰数在某一区间内取有限个值或可数个值的灰数称为离散灰数,取值连续地充满某一区间的灰数称为连续灰数。
某人的年龄在30到35之间,此人的年龄可能是30,31,32,33,34,35这几个数,因此年龄是离散灰数。
人的身高、体重等是连续灰数。
5. 黑数与白数当()∞∞-∈⊗,或()21,⊗⊗∈⊗,即当⊗的上、下界皆为无穷或上、下界都为讨论方便,我们将黑数与白数看成特殊的灰数。
6. 本征灰数与非本征灰数本征灰数是指不能或暂时还不能找到一个白数作为其“代表”的灰数,比如一般的事前预测值、宇宙的总能量、准确到秒或微妙的“年龄”等都是本征灰数。
非本征灰数是指凭先验信息或某种手段,可以找到一个白数作为其“代表”的灰数。
我们称此白数为相应灰数的白化值,记为⊗~,并用()a ⊗表示以a 为白化值的灰数。
如托人代买一件价格100元左右的衣服,可将100作为预购衣服价格()100⊗的白化数,记为()100100~=⊗。
从本质上来看,灰数又可分为信息型、概念型、层次型三类。
灰色预测模型※※分析
灰色预测模型灰色预测是就灰色系统所做的预测. 所谓灰色系统是介于白色系统和黑箱系统之间的过渡系统,其具体的含义是:如果某一系统的全部信息已知为白色系统,全部信息未知为黑箱系统,部分信息已知,部分信息未知,那么这一系统就是灰箱系统. 一般地说,社会系统、经济系统、生态系统都是灰色系统.灰色系统理论认为对既含有已知信息又含有未知或非确定信息的系统进行预测,就是对在一定方位内变化的、与时间有关的灰色过程的预测. 尽管过程中所显示的现象是随机的、杂乱无章的,但毕竟是有序的、有界的,因此这一数据集合具备潜在的规律,灰色预测就是利用这种规律建立灰色模型对灰色系统进行预测.灰色预测模型只需要较少的观测数据即可,这和时间序列分析,多元回归分析等需要较多数据的统计模型不一样. 因此,对于只有少量观测数据的项目来说,灰色预测是一种有用的工具.一、GM(1,1)模型灰色系统理论是邓聚龙教授在1981年提出来的,是一种对含有不确定因素系统进行预测的方法. 通过鉴别系统因素之间发展趋势的相异程度,进行关联分析,并通过对原始数据进行生成处理来寻找系统的变化规律,生成较强规律性数据序列,然后建立相应微分方程模型,从而预测事物未来的发展趋势和未来状态. 目前使用最广泛的灰色预测模型是关于数列预测的一个变量、一阶微分的GM(1,1)模型.GM(1,1)模型是基于灰色系统的理论思想,将离散变量连续化,用微分方程代替差分方程,按时间累加后所形成的新的时间序列呈现的规律可用一阶线性微分方程的解来逼近,用生成数序列代替原始时间序列,弱化原始时间序列的随机性,这样可以对变化过程作较长时间的描述,进而建立微分方程形式的模型. 其建模的实质是建立微分方程的系数,将时间序列转化为微分方程,通过灰色微分方程可以建立抽象系统的发展模型. 经证明,经一阶线性微分方程的解逼近所揭示的原始时间数列呈指数变化规律时,灰色预测GM(1,1)模型的预测将是非常成功的.1.1 GM(1,1)模型的建立灰色理论认为一切随机量都是在一定范围内、一定时间段上变化的灰色量及灰色过程. 数据处理不去寻找其统计规律和概率分布, 而是对原始数据作一定处理后, 使其成为有规律的时间序列数据, 在此基础上建立数学模型.GM(1,1)模型是指一阶,一个变量的微分方案预测模型,是一阶单序列的线性动态模型,用于时间序列预测的离散形式的微分方程模型.设时间序列()0X有n 个观察值,()()()()()()(){}00001,2,,Xx x x n =,为了使其成为有规律的时间序列数据,对其作一次累加生成运算,即令()()()()101tn xt x n ==∑从而得到新的生成数列()1X,()()()()()()(){}11111,2,,Xx x x n =,新的生成数列()1X 一般近似地服从指数规律. 则生成的离散形式的微分方程具体的形式为dxax u dt+= 即表示变量对于时间的一阶微分方程是连续的. 求解上述微分方程,解为当t =1时,()(1)x t x =,即(1)c x a=-,则可根据上述公式得到离散形式微分方程的具体形式为 ()()()11a t u u x t x e a a --⎛⎫=-+ ⎪⎝⎭其中,ax 项中的x 为dxdt的背景值,也称初始值;a ,u 是待识别的灰色参数,a 为发展系数,反映x 的发展趋势;u 为灰色作用量,反映数据间的变化关系.按白化导数定义有0()()lim t dx x t t x t dt t→+-= 显然,当时间密化值定义为1时,当1t →时,则上式可记为1lim(()())t dxx t t x t dt→=+- 这表明dxdt是一次累减生成的,因此该式可以改写为 (1)(1)(1)()dxx t x t dt=+- 当t 足够小时,变量x 从()x t 到()x t t +是不会出现突变的,所以取()x t 与()x t t +的平均值作为当t 足够小时的背景值,即(1)(1)(1)1()(1)2xx t x t ⎡⎤=++⎣⎦将其值带入式子,整理得 (0)(1)(1)1(1)()(1)2x t a x t x t u ⎡⎤+=-+++⎣⎦ 由其离散形式可得到如下矩阵:(1)(1)(0)(1)(1)(0)(0)(1)(1)1(1)(2)2(2)1(2)(3)(3)2()1(1)()2x x x x x x a u x n x n x n ⎛⎫⎡⎤-+ ⎪⎣⎦⎛⎫ ⎪ ⎪ ⎪⎡⎤-+ ⎪⎣⎦ ⎪=+ ⎪ ⎪ ⎪⎪ ⎪⎝⎭ ⎪⎡⎤--+ ⎪⎣⎦⎝⎭令 (0)(0)(0)(2),(3),,()TY x x x n ⎡⎤=⎣⎦(1)(1)(1)(1)(1)(1)11(1)(2)211(2)(3)21(1)()12x x x x B x n x n ⎛⎫⎡⎤-+ ⎪⎣⎦ ⎪⎪⎡⎤-+⎣⎦ ⎪= ⎪ ⎪ ⎪⎡⎤--+ ⎪⎣⎦⎝⎭()Ta u α=称Y 为数据向量,B 为数据矩阵,α为参数向量. 则上式可简化为线性模型:Y B α=由最小二乘估计方法得()1T T a B B B Y uα-⎛⎫== ⎪⎝⎭上式即为GM(1,1)参数,a u 的矩阵辨识算式,式中()1TT B B B Y -事实上是数据矩阵B 的广义逆矩阵.将求得的a ,u 值代入微分方程的解式,则()1(1)()((1))a t u ux t x e a a--=-+其中,上式是GM(1,1)模型的时间响应函数形式,将它离散化得(1)(0)(1)ˆ()(1)a t u u xt x e a a --⎛⎫=-+ ⎪⎝⎭ 对序列()()1ˆxt 再作累减生成可进行预测. 即()(0)(1)(1)(0)(1)ˆˆˆ()()(1)(1)1a a t xt x t x t u x e ea --=--⎛⎫=-- ⎪⎝⎭ 上式便是GM(1,1)模型的预测的具体计算式. 或对()atux t cea-=+求导还原得 (0)(0)(1)ˆ()((1))a t uxt a x e a--=-- 1.2 GM(1,1)模型的检验GM(1,1)模型的检验包括残差检验、关联度检验、后验差检验三种形式.每种检验对应不同功能:残差检验属于算术检验,对模型值和实际值的误差进行逐点检验;关联度检验属于几何检验范围,通过考察模型曲线与建模序列曲线的几何相似程度进行检验,关联度越大模型越好;后验差检验属于统计检验,对残差分布的统计特性进行检验,衡量灰色模型的精度. ➢ 残差检验残差大小检验,即对模型值和实际值的残差进行逐点检验. 设模拟值的残差序列为(0)()e t ,则(0)(0)(0)ˆ()()()e t x t xt =- 令()t ε为残差相对值,即残差百分比为(0)(0)(0)ˆ()()()%()x t xt t x t ε⎡⎤-=⎢⎥⎣⎦令∆为平均残差,11()nt t n ε=∆=∑.设残差的方差为22S ,则[]22211()n t S e t e n ==-∑. 故后验差比例C 为21/C S S =,误差频率P 为{}1()0.6745P P e t e S =-<.对于,C P 检验指标如下表:检验指标好合格勉强不合格P >0.95 >0.80 >0.70 <0.70 C <0.35 <0.50 <0.65 >0.65表 1 灰色预测精确度检验等级标准一般要求()20%t ε<,最好是()10%t ε<,符合要求.➢ 关联度检验关联度是用来定量描述各变化过程之间的差别. 关联系数越大,说明预测值和实际值越接近.设 {}(0)(0)(0)(0)ˆˆˆˆ()(1),(2),,()Xt xx x n =⋯ {}(0)(0)(0)(0)()(1),(2),,()X t x x x n =⋯序列关联系数定义为(){}{}{}(0)(0)(0)(0)(0)(0)(0)(0)ˆˆmin ()()max ()(),0ˆˆ()()max ()()1,0x t x t x t x t t t x t x t x t x t t σξσ⎧-+-⎪≠⎪=⎨-+-⎪=⎪⎩ 式中,(0)(0)ˆ()()xt x t -为第t 个点(0)x 和(0)ˆx 的绝对误差,()t ξ为第t 个数据的关联系数,ρ称为分辨率,即取定的最大差百分比,0ρ<<1,一般取0.5ρ=.(0)()x t 和(0)ˆ()xt 的关联度为()11nt r t n ξ==∑精度等级 关联度均方差比值小误差概率好(1级) 0.90≥ 0.35≤ 0.95≥ 合格(2级) 0.80≥ 0.50≤ 0.80≥ 勉强(3级) 0.70≥ 0.65≤ 0.70≥ 不合格(4级)0.70< 0.65>0.70<表 2 精度检验等级关联度大于60%便满意了,原始数据与预测数据关联度越大,模型越好.➢ 后验差检验后验差检验,即对残差分布的统计特性进行检验. 检验步骤如下:1、计算原始时间数列(){}0(0)(0)(0)(1),(2),,()Xx x x n =的均值和方差()2(0)(0)2(0)11111(),()n n t t xx t S x t x n n ====-∑∑ 2、计算残差数列{}(0)(0)(0)(0)(1),(2),,()ee e e n =的均值e 和方差22s()2(0)2(0)21111(),()n n t t e e t S e t e n n ====-∑∑其中(0)(0)(0)ˆ()()(),1,2,,e t x t xt t n =-=为残差数列.3、计算后验差比值21C S S =4、计算小误差频率{}(0)1()0.6745P P e t e S =-<令0S =0.67451S ,(0)()|()|t e t e ∆=-,即{}0()P P t S =∆<.若对给定的00C >,当0C C <时,称模型为方差比合格模型;若对给定的00P >,当0P P >时,称模型为小残差概率合格模型.>0.95 <0.35 优 >0.80 <0.5 合格 >0.70 <0.65 勉强合格 <0.70>0.65不合格表 3 后验差检验判别参照表1.3 残差GM(1,1)模型当原始数据序列(0)X建立的GM(1,1)模型检验不合格时,可以用GM(1,1)残差模型来修正. 如果原始序列建立的GM(1,1)模型不够精确,也可以用GM(1,1)残差模型来提高精度.若用原始序列(0)X建立的GM(1,1)模型(1)(0)ˆ(1)[(1)]at u uxt x e a a-+=-+ 可获得生成序列(1)X 的预测值,定义残差序列(0)(1)(1)ˆ()()()e k x k x k =-. 若取k=t , t+1, …, n ,则对应的残差序列为{}(0)(0)(0)(0)()(1),(2),,()e k e e e n =计算其生成序列(1)()e k ,并据此建立相应的GM(1,1)模型(1)(0)ˆ(1)[(1)]e a k e ee eu u et e e a a -+=-+ 得修正模型(1)(0)(0)(1)(1)()()(1)e a k ak e e e u u u x t x e k t a e e a a a δ--⎡⎤⎡⎤+=-++---⎢⎥⎢⎥⎣⎦⎣⎦其中1()0k tk t k t δ≥⎧-=⎨≤⎩为修正参数.应用此模型时要考虑:1、一般不是使用全部残差数据来建立模型,而只是利用了部分残差.2、修正模型所代表的是差分微分方程,其修正作用与()k t δ-中的t 的取值有关.1.4 GM(1,1)模型的适用范围定理:当GM(1,1)发展系数||2a ≥时,GM(1,1)模型没有意义.我们通过原始序列()0i X 与模拟序列()0ˆiX 进行误差分析,随着发展系数的增大,模拟误差迅速增加. 当发展系数0.3a -≤时,模拟精度可以达到98%以上;发展系数0.5a -≤时,模拟精度可以达到95%以上;发展系数1a ->时,模拟精度低于70%;发展系数 1.5a ->时,模拟精度低于50%. 进一步对预测误差进行考虑,当发展系数0.3a -<时,1步预测精度在98%以上,2步和5步预测精度都在90%以上,10步预测精度亦高于80%;当发展系数0.8a ->时,1步预测精度已低于70%.通过以上分析,可得下述结论:1、当0.3a -<时,GM(1,1)可用于中长期预测;2、当0.30.5a <-≤时,GM(1,1)可用于短期预测,中长期预测慎用;3、当0.50.8a <-≤时,GM(1,1)作短期预测应十分谨慎;4、当0.81a <-≤时,应采用残差修正GM(1,1)模型;5、当1a ->时,不宜采用GM(1,1)模型.1.5 GM(1,1)模型实例分析例:则该学生成绩时间序列如下:()()(0)(0)(0)(0)(0)(1),(2),(3),(4)79,74.825,74.29,76.98X x x x x ==对(0)X作一次累加后的数列为()()(1)(1)(1)(1)(1)(1),(2),(3),(4)79,153.825,228.115,305.095X x x x x ==对(1)X做紧邻均值生成. 令(1)(1)(1)()0.5()0.5(1)Z k x k x k =+-,得()()(1)(1)(1)(1)(2),(3),(4)116.4125,151.47,150.1925Z z z z ==则数据矩阵B 及数据向量Y 为(1)(1)(1)(2)1116.41251(3)1151.471(4)1150.19251z B z z ⎡⎤--⎡⎤⎢⎥⎢⎥=-=-⎢⎥⎢⎥⎢⎥⎢⎥--⎣⎦⎣⎦,(0)(0)(0)(2)74.825(3)74.29(4)76.98x Y x x ⎡⎤⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦ 对参数列ˆ[,]Taa b =进行最小二乘估计,得 176.61ˆ()[,]0.0144T T T T a B B B Y B Y a u -⎡⎤====⎢⎥-⎣⎦即 0.0144a =-,76.61u = 则GM(1,1)模型为()()110.014476.61dx x dt-= 时间响应式为(1)0.0144ˆ(1)5399.13895320.1389xk e -+=- 当1k =时,我们取(1)(0)(0)ˆˆ(1)(1)(0)79xx x === 还原求出(0)X的模拟值. 由(0)(1)(1)ˆˆˆ()()(1)Xk x k x k =--,取2,3,4k =,得 ()()(0)(0)(0)(0)(0)ˆˆˆˆˆ(1),(2),(3),(4)79,74.281,74.3584,76.4513xx x x x == 通过预测,得到实际值与预测值如下表:实际值 预测值 相对误差()k ε 第一学期79 79 0 第二学期 74.825 74.2810 0.73% 第三学期 74.29 74.3584 0.0921% 第四学期76.9876.45130.7051%表 4 四学期的实际值与预测值的误差表因为()10%k ε<,那就可得学生的预测值,与现实值进行比较得出该模型精度较高,可进行预测和预报.我们对学生未来两个学期(也就是第五、六个学期)的成绩进行预测,分别为77.5602分和78.6851分.例:某大型企业1999年至2004年的产品销售额如下表,试建立GM(1,1)预测模型,并预测2005年的产品销售额。
《灰色预测法》的应用[1]1
灰色预测法第一节灰色系统一、灰色预测的概念灰色预测是就灰色系统所作的预测。
所谓灰色系统是介于白色系统和黑箱系统之间的过渡系统,其具体含义是:如果某一系统的全部信息已知为白色系统,全部信息末知为黑箱系统,部分信息已知、部分信息未知,那么这一系统就是灰色系统。
一般地说,社会系统、经济系统、生态系统都是灰色系统。
例如物价系统,导致物价上涨的因素很多,但已知的却不多,因此对物价这一灰色系统的预测,可以用灰色预测方法。
灰色系统理论认为对既含有已知信息又含有本知或非确定信息的系统进行预测,就是对在一定范围内变化的,与时间有关的灰色过程的预测。
尽管过程中所显示的现象是随机的、杂乱无章的,但毕竟是有序的、有界的,因此这一数据集合具备潜在的规律。
灰色预测就是利用这种规律建立灰色模型对灰色系统进行预测。
灰色预测一般有四种类型。
1.数列预测。
对某现象随时间的顺延而发生的变化所作的预测定义为数列预测。
例如对消费物价指数的预测,需要确定两个变量,一个是消费物价指数的水平,另一个是这一水平所发生的时间。
2.灾变预测。
对发生灾害或异常突变事件可能发生的时间预测称为灾变预测。
例如对地震时间的预测。
3.系统预测。
对系统中众多变量间相互协调关系的发展变化所进行的预测称为系统预测。
例如市场中代用商品、相互关联商品销售量互相制约的预测。
4.拓扑预测。
将原始数据作曲线,在曲线上按定值寻找该定值发生的所有时点,并以该定值为框架构成时点数列,然后建立模型预测未来该定值所发生的时点。
二、系统功能模拟与灰色分析(一)系统模拟所谓系统模拟是指通过系统模型间接地模拟真实系统的过程。
系统模型建立起来后,在人为控制的条件下,通过改变特定参数,观察和研究模型的情况,以预测系统在真实环境下的特征、规律、作用、效率等。
这是组建系统的必经过程,也是研究系统的重要手段。
根据系统模型和系统真实情况相似关系的特点,一通常把模拟分为物理模拟与数学模拟两大类。
物理模拟是以系统模型和真实系统之间物理相似或几何相似为基础的一种模拟方法。
灰色理论基础(自己总结)
灰色理论在灰色理论中,通常用GM (n, m )来表示灰色模型,其中,n 为差分次数,m 为变量的个数。
对于沉降的预测,工程研究人员一般采用GM (1, 1)来进行预测。
等时距GM (1, 1)模型等时距GM (1, 1)模型是最常用的一种灰色预测模型,也是非等时距GM (1,1)模型的建模基础。
设观测到的原始等时距数据序列为:{}[0](0)(0)(0)(0)(1),(2),,(),,()X x x x k x n =⋅⋅⋅⋅⋅⋅其中,(0)()x k 为k t 时刻对应的初始数值,时间步长1i i t t c +-=为常数,1,2,3i n =⋅⋅⋅。
对[0]X 中的数据经过一次累加(1-AGO )运算,得到光滑的生成数列:{}[1](1)(1)(1)(1)(1),(2),,(),,()X x x x k x n =⋅⋅⋅⋅⋅⋅其中,(1)(0)1()()k k i i x t xt ==∑,1,2,3k n =⋅⋅⋅。
[1]X 的均值数据序列[1]Z 可以表示为:{}[1](1)(1)(1)(1)(1),(2),,(),,(1)Z z z z k z n =⋅⋅⋅⋅⋅⋅-其中,(1)(1)(1)()1/2()(1)z k x k x k ⎡⎤=++⎣⎦。
(1)()x k 的GM (1, 1)模型白化形式的微分方程可表示为:(1) 其中,a ,b 为待定参数,可以由式(1)离散化后求得,式(1)在区间[,1]k k +离散后的方程为:(0)(1)(1)()x k az k b ++= (2)离散的过程:式(1)在区间[,1]k k +上积分,有:111(1)(1)()()k k k kk kdxt ax t dt bdt ++++=⎰⎰⎰ 1(1)(1)(1)(0)()(1)()(1)k kdxt x k x k x k +=+-=+⎰所以,式(1)离散后的方程为式(2)。
利用最小二乘法可以从式(2)中求得参数a 和b :(0)(1)(0)(1)(1)()(1)=-()x k az k b x k az k b Y Ba ++=⇒++⇒= 式中,(1)(0)(1)(0)(1)(0)(1), 1(2)(2), 1(3), Y=, , 1 (1),1()z x a z x B a b z n x n ⎡⎤⎡⎤-⎢⎥⎢⎥-⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⋅⋅⋅⋅⋅⋅⎣⎦⎢⎥⎢⎥⎢--⎥⎢⎥⎣⎦⎣⎦把求得的参数代入式(1)中,可以得到白化方程的解为: (1)1()/at x t c e b a -=+当t=1时,(1)(1)(0)(1)(1)(1)()=(1)(1)()=((1)/)/a t x t x x x t x b a e b a --=⇒-+所以GM (1,1)模型的时间相应数据序列为:k =1,2,3….n 。
灰色预测模型
dx
(t)
(1)
ax
(t)b,
dt
解为
b
a
(
t
1
) b
x(
t)
(
x(
1
))
e
.
a
a
(
1
)
(
0
)
(3)
于是得到预测值
b
b
(
1
)
(
0
)
ak
ˆ
x(
k
1
)
(
x(
1
)
)
e
,
k
1
,
2
,
,
n
1
,
a
a
从而相应地得到预测值:
(
0
)
(
1
)
(
1
)
ˆ
ˆ
ˆ
x
(
k
1
)
x
(
k
1
)
x
(
k
lim
dt
t
t 0
而 ( 1)( x ( k )) x ( k ) x ( k 1 ), 相当于
t 1
(3)加权邻值生成
(
0
)
(
0
)
(
0
)
(
0
)
x
(
x
(
1
),
x
(
2
),
,
x
(
n
))
设原始数列为
灰色预测总结
灰色系统建模灰色系统理论在建模中的应用:灰色系统理论在建模中被广泛用来处理数据。
与插值拟合相比,利用灰色模型处理数据不仅对数据没有很强的限制,而且精度更高,计算更简便。
常用的灰色系统生成方式有: 累加生成,累减生成,均值生成,级比生成等,下面对这几种生成做简单介绍. 累加生成:(0)(0)(0)(0)(0)(1)(1)(1)(1)(1)(1)(0)[(1),(2),,()],,[(1),(2),,()],:x x x x x n x x x x x n x x ==令为原始序列,记生成数为如果与之间满足如下关系(1)(0)1()();1,2,,(21)ki x k x i k n===-∑,1AGO -一次累加生成则称为记为累加生成在灰色系统理论中有着非常重要的地位,它能使任意非负数列,摆动的或非摆动的,转化为非减的的,递增的数列.累减生成:累减生成,即对数列求相邻两数据的差,累减生成是累加生成的逆运算,常简记为IAGO(Inver se Accumulated Generating Operation), 累减生成可将累加生成还原为非生成数列,在建模过程中用来获得增量信息,其运算符号为∆.()()(),,:r r i x r x i ∆令为次生成数列对作次累减生成记为其基本关系式为(0)()()(1)()(0)()(0)()(2)()(1)()(1)()()()(1)()(1)()[()]()[()][()][(1)][()][()][(1)](25)[()][()][(1)]r r r r r r r r i r i r i r x k x k x k x k x k x k x k x k x k x k x k --∆=∆=∆-∆-∆=∆-∆--∆=∆-∆-(0)(1)(),(0)0,;(0)1(0)11.i k k i k k i ∆∆-∆--式中为次累减即无累减为1次累减,即与时刻两个零次累减量求差,为次累减,即与时刻两个次累减量求差(25):-从式还可得到以下关系(1)()(0)()(0)()()()1(1)(1)11(1)[()][()][(1)]()(1)(26)()()()r r r r r kk r r i i r x k x k x k x k x k x i x i xk ---==-∆=∆-∆-=---=-=∑∑(2)()(1)()(1)()(1)(1)1(2)(2)11(2)[()][()][(1)]()(1)(27)()()()r r r r r kk r r i i r x k x k x k x k x k x i x i x k -----==-∆=∆-∆-=---=-=∑∑:同理可得()()()[()]()(28)i r r i x k xk -∆=-()()(0)[()]()(29)r r x k x k ∆=-(29),,.,,.:1,r r r -=从式可以看出对次生成数列作次累减即还原为非生成数列事实上累加中包含着累减累减中包含着累加比如时有1(1)(0)(0)(0)11(1)(0)()()()()(1)()(210)k k i i x k x i x i x k x k x k -====+=---∑∑(0)(1)(1)()()(1)x k x k x k =--进一步有(1)()()()()(1)(211)r r r x k x k x k -=---.均值生成分为邻均值生成与非邻均值生成两种 σρ级比生成是一种常用的填补序列端点空穴的方法.对数列端点值的生成,我们无法采用均值生成填补空缺,只能采用级比生级比生成.成是级比级比生(k 成在建模中可以获得较好的灰)与光滑比(k)生成指数律.的总称.(0)(0)(0)(0)[(1),(2),,()],(),(),X x x x n K k σρ=设序列为原始序列称为级比为光滑比其表达式为(0)(0)(0)(1)()()/(1)()()/(1)(212)k x k x k k x k x k σρ=-=--(0)(0)(0)(0)(0)(0)(0)[(1),(2),,(1),()],(1)(1),()(),(1)()X x x n n x n x n x x n ϕϕϕϕ=-设为端点是空穴的序列若用右邻的级比生成用的左邻级比生成则称和为级比生成GM(1.1)模型建模机理 GM(1.1)原理步骤 原始数列:{}(0)(0)(0)(0)(1),(2),,()X x x x n =对(0)X 进行一次累加,得到新数列:{}(1)(1)(1)(1)(1),(2),,()X x x x n =(1),()()ki xk x i ==∑其中于是(0)()x k 的GM (1.1)白化形式的微分方程为: (1)(1)(216)dx ax u dt+=- 其中,a,u 为待定系数,将(2-16)式离散化,即得:(1)(1)(1)((1))((1))(217)x k az x k u∆+++=-其中,(1)(1)((1))x k ∆+为(1)x 在(k+1)时刻的背景值 因为:(1)(1)(1)(1)(0)((1))(1)()(1)(218)x k x k x k x k ∆+=+-=+-(1)(1)(1)1(1)((1)())(219)2z k x k x k +=++-将(2-18),(2-19)式代入(2-17)式,得(0)(1)(1)1(1)[(()(1))](220)2x k a x k x k u+=-+++-将(2-20)(1)(1)(0)(1)(1)(0)(0)(1)(1)1((1)(2))12(2)1((2)(3))1(3)(221)2()1((1)())12x x x x x x x n x n x n ⎡⎤-+⎢⎥⎡⎤⎢⎥⎢⎥⎢⎥-+⎢⎥⎢⎥=-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎢⎥--+⎢⎥⎣⎦(1)(1)(0)(1)(1)(0)(0)(1)(1)1((1)(2))12(2)1((2)(3))1(3),2()1((1)())12x x x x x x Y B x n x n x n ⎡⎤-+⎢⎥⎡⎤⎢⎥⎢⎥⎢⎥-+⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎢⎥--+⎢⎥⎣⎦令[]T a u Φ=为待辨识参数向量,则(2-21)可写成:(222)Y B =Φ-参数向量Φ可用最小二乘法求取,即1ˆˆˆ[,]()T T T a u B B B Y -Φ== 把求取的参数代入(2-16)式,并求出其离散解ˆ(1)(1)ˆˆˆ(1)[(1)](224)ˆˆak uu x k x e a a -+=-+-(0)(1)(1)ˆˆ(1)ˆˆˆ(1)(1)()ˆ(1)[(1)](225)ˆa akxk x k x k u e x e a-+=+-=---还原到原始数据得(224),(225)(1.1),(1.1).GM GM --式称为模型的时间相应函数模型它是模型灰色预测的具体计算公式(GM1.1)模型的精度检验模型选定之后,一定要经过检验才能判定其是否合理,只有通过检验的模型才能用来作预测,灰色模型的精度检验一般有三种方法:相对误差大小检验法,关联度检验法和后验差检验法.下面对这三种方法做个简单介绍.1 级比检验:为了保证建模方法的可行性,需要对已知数据列做必要的检验处理。
灰色预测
作m次累加:
X
X (1) (1) X (0) (1)
m
k X
i 1
k
m 1
i
X (1) (2) X (0) (1) X (0) (2) X (1) (1) X (0) (2) ...... X
(1)
( n) X (()) (i ) X (1) ( n 1) X (0) ( n)
度,根据经验,当ρ=0.5时,关联度大于0.6便 满意了。
(3)后验差检验
a.计算原始序列标准差:
S1
X i X
0
0 2
n
b. 计算绝对误差序列的标准差:
S2
i
0
0 2
n
c. 计算方差比:
S2 C S1
注:(1)原始数据不一定全部用来建模,数 据不同,模型不同。 (2)数据的取舍应保证建模序列等时矩、 相连,不得有跳跃出现。 (3)一般建模数据应当有最新的数据及其相 邻数据构成。
三、模型检验 灰色预测检验一般有残差检验、关联度检 验和后验差检验。
(1)残差检验
ˆ 1 i , 按预测模型计算X
1 0 X 1 X 1 (3)取
b ak b 0 1 ˆ X k 1 X 1 e a a
k 1, 2..., n
(4)还原值
ˆ 0 k 1 X ˆ 1 k 1 X ˆ 1 k X
灰色预测法
王卉
灰色预测
一、灰色预测的概念
(1)灰色系统、白色系统和黑色系统
• 白色系统是指一个系统的内部特征是完全已知的,
预测方法——灰色预测模型
预测⽅法——灰⾊预测模型灰⾊预测模型主要特点是模型使⽤的不是原始数据序列,⽽是⽣成的数据序列,核⼼体系为灰⾊模型(GM),即对原始数据作做累加⽣成(累减⽣成,加权邻值⽣成)得到近似指数规律再进⾏建模。
优点:不需要很多数据;将⽆规律原始数据进⾏⽣成得到规律性较强的⽣成序列。
缺点:只适⽤于中短期预测,只适合指数增长的预测。
GM(1,1)预测模型GM(1,1)模型是⼀阶微分⽅程,且只含⼀个变量。
1. 模型预测⽅法2. 模型预测步骤1. 数据检验与处理为保证建模⽅法可⾏,需要对已知数据做必要的检验处理。
设原始数据列为x(0)=(x0(1),x0(2),….x0(n)),计算数列的级⽐λ(k)=x(0)(k−1)x(0)(k),k=2,3,...,n如果所有的级⽐都落在可容覆盖区间X=(e−2n+1,e2n+1)内,则数列可以建⽴GM(1,1)模型且可以进⾏灰⾊预测。
否则,对数据做适当的变换处理,如平移变换:y(0)(k)=x(0)(k)+c,k=1,2,...,n取c使得数据列的级⽐都落在可容覆盖内。
2. 建⽴模型根据1中⽅程的解,进⼀步推断出预测值ˆx(1)(k+1)=(x(0)(1)−ba)e−ak+ba,k=1,2,...,n−13. 检验预测值1. 残差检验ε(k)=x(0)(k)−ˆx(0)(k)x(0)(k),k=1,2,...,n如果对所有的|ε(k)|<0.1|ε(k)|<0.1,则认为到达较⾼的要求;否则,若对所有的|ε(k)|<0.2|ε(k)|<0.2,则认为达到⼀般要求。
2. 级⽐偏差值检验ρ(k)=1−1−0.5a1+0.5aλ(k)如果对所有的|ρ(k)|<0.1,则认为达到较⾼的要求;否则,若对于所有的|ρ(k)|<0.2,则认为达到⼀般要求。
4. 预测预报根据问题需要给出预测预报。
3. py实现import numpy as npimport pandas as pddata=[71.1,72.4,72.4,72.1,71.4,72.0,71.6] # 数据来源len=len(data) # 数据量# 数据检验lambdas=[]for i in range(1,len):lambdas.append(data[i-1]/data[i])X_Min=np.e**(-2/(len+1))X_Max=np.e**(2/(len+1))l_min,l_max=min(lambdas),max(lambdas)if l_min<X_Min or l_max> X_Max:print("该组数据为通过数据检验,不能建⽴GM模型!")else:print("改组数据通过检验")# 建⽴GM(1,1)模型data_1=[] # 累加数列z_1=[]data_1.append(data[0])for i in range(1,len):data_1.append(data[i]+data_1[i-1])z_1.append(-0.5*(data_1[i]+data_1[i-1]))B=np.array(z_1).reshape(len-1,1)one=np.ones(len-1)B=np.c_[B,one]Y=np.array(data[1:]).reshape(len-1,1)a,b=np.dot(np.dot(np.linalg.inv(np.dot(B.T,B)),B.T),Y)print('a='+str(a))print('b='+str(b))## 数据预测data_1_prd=[]data_1_prd.append(data[0])data_prd=[] # 预测datadata_prd.append(data[0])for i in range(1,len):data_1_prd.append((data[0]-b/a)*np.e**(-a*i)+b/a)data_prd.append(data_1_prd[i]-data_1_prd[i-1])# 模型检验## 残差检验e=[]for i in range(len):e.append((data[i]-data_prd[i])/data[i])e_max=max(e)if e_max<0.1:print("数据预测达到较⾼要求!")elif e_max<0.2:print("数据预测达到⼀般要求!")# 输出预测数据for i in range(len):print(data_prd[i])灰⾊Verhulst预测模型主要⽤于描述具有饱和状体的过程,即S型过程,常⽤于⼈⼝预测,⽣物⽣长,繁殖预测及产品经济寿命预测等。
灰色预测理论与应用
n
k
k 1
0
称为
X
0
k
与 Xˆ k 的关联度
灰色模型 GM
1、GM(1,1)模型的建立
( n )) 有n个观察值,通 设时间序列 过累加生成新序列 x (1 ) ( x (1 ) (1), x (1 ) ( 2 ), , x (1 ) ( n )) 则GM(1,1)模型相应的微分方程为: x (1), x ( 2 ), , x
令x
(0)
为 原 始 序 列 ,x
(1 )
(0)
[x
(1 )
(0)
(1), x
(1 )
(0)
( 2 ), , x
(1 )
(0)
( n )],
记生成数为x x
(1 )
,x
(1 )
[x
(1), x
( 2 ), , x
( n )], 如 果
与x
(0)
之间满足如下关系 :
x
(1 )
(k )
k
x
(0)
( i ); k 1, 2 , , n
( 2 1)
i1
则 称 为 一 次 累 加 生 成 , 记 为 1 A G O ( A ccu m u la tin g G en era tio n O p era to r )
r次 累 加 生 成 有 下 述 关 系 :
x
(r )
(0)
[x [x
(r)
( k 1)] ( k 1)] (2 5)
(2)
(r )
(1 )
(r )
(1 )
(r)
灰色预测方法实验报告
灰色预测方法实验报告实验报告:灰色预测方法一、实验目的通过使用灰色预测方法,对某个问题进行预测,并分析预测结果的准确性。
二、实验原理灰色预测方法是一种基于数据的预测方法,用于在缺乏足够数据的情况下对未来趋势进行预测。
该方法主要基于灰色系统理论,通过对数据序列进行灰色分析,找出其内在规律,并建立预测模型。
三、实验步骤1. 收集相关数据:首先,需要收集与要预测的问题相关的数据,包括历史数据和现有数据。
2. 数据预处理:对收集到的数据进行清洗和处理,确保数据的准确性和可靠性。
3. 灰色分析:使用灰色分析方法对数据进行处理,包括建立灰色模型、计算关联度等步骤。
4. 模型建立:基于灰色分析的结果,建立预测模型。
5. 验证模型:使用部分历史数据进行模型验证,评估模型的准确性和可靠性。
6. 进行预测:根据建立的模型,对未来一段时间内的数据进行预测。
7. 分析结果:对预测结果进行分析,并评估预测的准确性和可行性。
四、实验结果通过实验,我们成功应用了灰色预测方法对某个问题进行了预测,并得到了如下结果:1. 在灰色分析过程中,我们找到了数据序列的内在规律,并建立了预测模型。
2. 模型验证结果显示,该模型在部分历史数据上具有较高的准确性和可靠性。
3. 根据建立的模型,我们对未来一段时间内的数据进行了预测,并取得了一定的准确性。
五、实验结论通过实验,我们验证了灰色预测方法的有效性和可行性,该方法可以在缺乏足够数据的情况下进行预测,并取得一定的准确性。
在实际应用中,我们可以根据实际问题的特点,选择适当的灰色预测方法,并进行合理的预测。
六、实验总结通过本次实验,我们对灰色预测方法有了更深入的了解,并且验证了其在预测问题上的有效性。
实验过程中,我们还需要注意数据的质量和预处理的准确性,以及模型的验证过程,确保预测结果的准确性和可靠性。
灰色预测方法在实际应用中有很大的潜力,可以帮助我们做出合理的预测和决策。
第三章 灰色预测模型汇总
可见图3.1上的曲线有明显的摆动,图3.2呈现逐渐 递增的形式,说明原始数据的起伏已显著弱化.可以 设想用一条指数曲线乃至一条直线来逼近累加生成 数列 x (1) .
图3.1
图3.2
为了把累加数据列还原为原始数列,需进行后减运算
或称相减生成,它是指后前两个数据之差,如上例中
第三章 灰色预测模型及其应用
灰色预测模型(Gray Forecast Model)是通过少量 的、不完全的信息,建立数学模型并做出预测的 一种预测方法.当我们应用运筹学的思想方法解决 实际问题,制定发展战略和政策、进行重大问题 的决策时,都必须对未来进行科学的预测. 预测 是根据客观事物的过去和现在的发展规律,借助 于科学的方法对其未来的发展趋势和状况进行描 述和分析,并形成科学的假设和判断.
常用的灰色预测有五种:
(1)数列预测,即用观察到的反映预测对象特征的时间序列来 构造灰色预测模型,预测未来某一时刻的特征量,或达到某一特征 量的时间。
(2)灾变与异常值预测,即通过灰色模型预测异常值出现的时 刻,预测异常值什么时候出现在特定时区内。
(3)季节灾变与异常值预测,即通过灰色模型预测灾变值发生 在一年内某个特定的时区或季节的灾变预测。
x(1) (5) x(1) (5) x(1) (4) 34 27 7, x(1) (4) x(1) (4) x(1) (3) 27 17 10, x(1) (3) x(1) (3) x(1) (2) 17 9 8, x(1) (2) x(1) (2) x(1) (1) 9 6 3, x(1) (1) x(1) (1) x(1) (0) 6 0 6. 归纳上面的式子得到如下结果:一次后减 x(1) (i) x(1) (i) x(1) (i 1) x(0) (i)
灰色预测法简述
运用灰色预测法测算我市“十一五”时期人才数量一、基本原理系统是指相互依赖的两个或两个以上要素所构成的具有特定功能的有机整体。
系统可以根据其信息的清晰程度,分为白色、黑色和灰色系统。
白色系统是指信息完全清晰可见的系统;黑色系统是指信息完全未知的系统;灰色系统是介于白色和黑色系统之间的系统,即部分信息已知、部分信息未知的系统。
宇宙间大量存在的是灰色系统,严格的说,灰色系统是绝对的,而白色和黑色系统则是相对的。
运用灰色系统理论、通过建立灰色模型所进行的预测即为灰色预测。
对经济、社会、农业等系统的预测属于本征性灰色系统的预测。
因为这类系统没有物理原型,不清楚系统的作用机制,很难判断信息的完备性,难以对系统关系、结构作精确描述,人们只能凭逻辑推理、凭某种观念意识、凭某种准则对系统的结果、关系进行论证,然后再建立某种模型,这些模型充其量只能看作是原系统的代表、同构。
灰色系统不同于模糊系统,模糊系统内涵明确而外延模糊,灰色系统外延明确而内涵不为人们所掌握;灰色系统是基于关联度收敛原理、生成数、灰导数、灰微分方程等的观点和方法,通过建立灰色方程型模型所进行的预测,它具有如下的特点:(一)灰色模块建模,而不直接用原始数据序列。
在建模前,先对原始数据进行整理和处理,使之呈现一定的规律性,这种方法叫做生成;经过一定方式生成的新序列称之为“模块”这样做的目的是为了消除原始序列的随机性,使上下波动的时间序列转变成单调升、并带有线性或指数规律的序列。
(二)建立微分方程的动态模型。
这种建模方法为本征性灰色系统的实体化、物理化找到了途径,把自然科学的试验手段移植到抽象系统。
(三)关联分析代替回归分析。
灰色系统主张按机理、按发展变化态势作特征分析,按发展态势建立关联的测度,研究关联序,以研究生成函数的逼近度、检验预测精度等。
二、灰色简单模型现行的比较常用的灰色模型有:灰色简单模型、灰色新还原模型、灰色残差模型、灰色新还原残差模型、DGM模型和费尔哈斯模型。
灰色预测知识点总结
灰色预测
邓聚龙(1982):将系统看做是一个随时间变化而变化的函数。
基于最小二乘法的指数拟合曲线
灰色系统分析方法是通过鉴别系统因素之间发展趋势的相似或相异程度,即进行关联度分析,并通过对原始数据的生成处理来寻求系统变动的规律。
生成数据序列有较强的规律性,可以用它来建立相应的微分方程模型,从而预测事物未来的发展趋势和状态。
首先,在预测模型建立中,令x(0)(k)为历史数据序列,x(1)(k)为原始拘束的一次累加生成序列,x(0)(k)为预测输出。
离散GM(1,1)模型:通过对原始数据序列的累加生成,弱化随机扰动因素的影响,发现其指数增长规律,然后用指数曲线进行模拟,用最小二乘法求解模型参数,或者可以成为基于累加生成和最小二乘法的指数拟合模型。
Matlab软件
谢小玉,等. 基于灰色预测模型的内蒙古自治区生态足迹动态分析和预测
建模步骤:
1、把原始数据加工成生成数;
2、对残差(模型计算值与实际值之差)修订后,建立差分微分方程模型;
3、基于关联度收敛的分析;
4、GM模型所得数据须经过逆生成还原后才能用。
5、采用“五步建模(系统定性分析、因素分析、初步量化、动态量化、优化)法”,建立一种差分微分方程模型GM(1,1)预测模型。
第8章灰色预测方法
∈[2/5,5/2] 取数不一致
灰度:是灰数的测度。 灰度在一定程度上反映了人们对灰色系统之行为 特征的未知程度。它与相应定义信息域的长度及其 基本值有关。
8.2 灰 色 预 测 概 念
一、灰色预测的概念
(1)灰色系统、白色系统和黑色系统
• 白色系统是指一个系统的内部特征是完全已知的,
X(1) =(1962,4051,5376,6371,8139,10121,12779,15432,18432, 21101,23678,26446,29089,32027,35677,38274,39961,41639)
累加生成前后的变化特征 45000 40000 35000 30000 25000 20000 15000 10000 5000 0 0 5 10 15 20
• 灰色预测通过鉴别系统因素之间发展趋势的 相异程度,即进行关联分析,并对原始数据进 行生成处理来寻找系统变动的规律,生成有较 强规律性的数据序列,然后建立相应的微分方 程模型,从而预测事物未来发展趋势的状况。
• 灰色预测法用等时距观测到的反映预测对
象特征的一系列数量值构造灰色预测模型,
预测未来某一时刻的特征量,或达到某一
一次累减的公式为:
X 1 k X 0 k X 0 k 1
例 原始数据为 X (0) ( X (0) (1), X (0) (2), X (0) (3) X (0) (18)) (1962, 2089,1325,995,1768,1982, 2658, 2653,3000, 2669, 2577, 2768, 2643, 2938,3650, 2597,1687,1678)
(100) 100
从本质上看,灰数可分为信息型、概念型和层次 型灰数。 (7)信息型灰数
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
灰色系统建模灰色系统理论在建模中的应用:灰色系统理论在建模中被广泛用来处理数据。
与插值拟合相比,利用灰色模型处理数据不仅对数据没有很强的限制,而且精度更高,计算更简便。
常用的灰色系统生成方式有: 累加生成,累减生成,均值生成,级比生成等,下面对这几种生成做简单介绍. 累加生成:(0)(0)(0)(0)(0)(1)(1)(1)(1)(1)(1)(0)[(1),(2),,()],,[(1),(2),,()],:x x x x x n x x x x x n x x ==L L 令为原始序列,记生成数为如果与之间满足如下关系(1)(0)1()();1,2,,(21)ki x k x i k n===-∑L,1AGO -一次累加生成则称为记为累加生成在灰色系统理论中有着非常重要的地位,它能使任意非负数列,摆动的或非摆动的,转化为非减的的,递增的数列.累减生成:累减生成,即对数列求相邻两数据的差,累减生成是累加生成的逆运算,常简记为IAGO(Inver se Accumulated Generating Operation), 累减生成可将累加生成还原为非生成数列,在建模过程中用来获得增量信息,其运算符号为∆.()()(),,:r r i x r x i ∆令为次生成数列对作次累减生成记为其基本关系式为(0)()()(1)()(0)()(0)()(2)()(1)()(1)()()()(1)()(1)()[()]()[()][()][(1)][()][()][(1)](25)[()][()][(1)]r r r r r r r r i r i r i r x k x k x k x k x k x k x k x k x k x k x k --∆=∆=∆-∆-∆=∆-∆--∆=∆-∆-L L(0)(1)(),(0)0,;(0)1(0)11.i k k i k k i ∆∆-∆--式中为次累减即无累减为1次累减,即与时刻两个零次累减量求差,为次累减,即与时刻两个次累减量求差(25):-从式还可得到以下关系(1)()(0)()(0)()()()1(1)(1)11(1)[()][()][(1)]()(1)(26)()()()r r r r r kk r r i i r x k x k x k x k x k x i x i x k ---==-∆=∆-∆-=---=-=∑∑(2)()(1)()(1)()(1)(1)1(2)(2)11(2)[()][()][(1)]()(1)(27)()()()r r r r r kk r r i i r x k x k x k x k x k x i x i x k -----==-∆=∆-∆-=---=-=∑∑:同理可得()()()[()]()(28)i r r i x k x k -∆=-()()(0)[()]()(29)r r x k x k ∆=-(29),,.,,.:1,r r r -=从式可以看出对次生成数列作次累减即还原为非生成数列事实上累加中包含着累减累减中包含着累加比如时有1(1)(0)(0)(0)11(1)(0)()()()()(1)()(210)k k i i x k x i x i x k x k x k -====+=---∑∑(0)(1)(1)()()(1)x k x k x k =--进一步有(1)()()()()(1)(211)r r r x k x k x k -=---.均值生成分为邻均值生成与非邻均值生成两种σρ级比生成是一种常用的填补序列端点空穴的方法.对数列端点值的生成,我们无法采用均值生成填补空缺,只能采用级比生级比生成.成是级比级比生(k 成在建模中可以获得较好的灰)与光滑比(k)生成指数律.的总称.(0)(0)(0)(0)[(1),(2),,()],(),(),X x x x n K k σρ=L 设序列为原始序列称为级比为光滑比其表达式为(0)(0)(0)(1)()()/(1)()()/(1)(212)k x k x k k x k x k σρ=-=--(0)(0)(0)(0)(0)(0)(0)[(1),(2),,(1),()],(1)(1),()(),(1)()X x x n n x n x n x x n ϕϕϕϕ=-L 设为端点是空穴的序列若用右邻的级比生成用的左邻级比生成则称和为级比生成GM(1.1)模型建模机理 GM(1.1)原理步骤 原始数列:{}(0)(0)(0)(0)(1),(2),,()X x x x n =L对(0)X进行一次累加,得到新数列:{}(1)(1)(1)(1)(1),(2),,()X x x x n =L(1),()()ki xk x i ==∑其中于是(0)()x k 的GM (1.1)白化形式的微分方程为: (1)(1)(216)dx ax u dt+=- 其中,a,u 为待定系数,将(2-16)式离散化,即得:(1)(1)(1)((1))((1))(217)x k az x k u∆+++=-其中,(1)(1)((1))x k ∆+为(1)x 在(k+1)时刻的背景值 因为:(1)(1)(1)(1)(0)((1))(1)()(1)(218)x k x k x k x k ∆+=+-=+-(1)(1)(1)1(1)((1)())(219)2z k x k x k +=++-将(2-18),(2-19)式代入(2-17)式,得(0)(1)(1)1(1)[(()(1))](220)2x k a x k x k u+=-+++-将(2-20)(1)(1)(0)(1)(1)(0)(0)(1)(1)1((1)(2))12(2)1((2)(3))1(3)(221)2()1((1)())12x x x x x x x n x n x n ⎡⎤-+⎢⎥⎡⎤⎢⎥⎢⎥⎢⎥-+⎢⎥⎢⎥=-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎢⎥--+⎢⎥⎣⎦M M M(1)(1)(0)(1)(1)(0)(0)(1)(1)1((1)(2))12(2)1((2)(3))1(3),2()1((1)())12x x x x x x Y B x n x n x n ⎡⎤-+⎢⎥⎡⎤⎢⎥⎢⎥⎢⎥-+⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎢⎥--+⎢⎥⎣⎦M M M 令[]T a u Φ=为待辨识参数向量,则(2-21)可写成:(222)Y B =Φ-参数向量Φ可用最小二乘法求取,即1ˆˆˆ[,]()T T T a u B B B Y -Φ==把求取的参数代入(2-16)式,并求出其离散解ˆ(1)(1)ˆˆˆ(1)[(1)](224)ˆˆak uu x k x e a a -+=-+-(0)(1)(1)ˆˆ(1)ˆˆˆ(1)(1)()ˆ(1)[(1)](225)ˆa ak xk x k x k u e x e a-+=+-=---还原到原始数据得(224),(225)(1.1),(1.1).GM GM --式称为模型的时间相应函数模型它是模型灰色预测的具体计算公式(GM1.1)模型的精度检验模型选定之后,一定要经过检验才能判定其是否合理,只有通过检验的模型才能用来作预测,灰色模型的精度检验一般有三种方法:相对误差大小检验法,关联度检验法和后验差检验法.下面对这三种方法做个简单介绍.1 级比检验:为了保证建模方法的可行性,需要对已知数据列做必要的检验处理。
原始数列:{}(0)(0)(0)(0)(1),(2),,()X x x x n =L级比表达式为:2 后验差检验法(0)(0)2212ˆ(1.1)(231),(232),,GM XX E S S --设按建模法所求出的如所示残差如所示原始序列及残差序列的方差分别为和则2(0)21122211[()]1[()](235)n k nk S x k x n S e k e n ===-=--∑∑(0)1111,(),()n nk k x x k e e k n n ====∑∑其中计算后验差比为:21/(236)C S S =-计算小误差概率:{}1()0.6745(237)p P e k e S =-<-1212,.C p C C S S S S C 指标和是后验差检验的两个重要指标.指标越小越好越小表示大而越小大表示原始数据方差大,即原始数据离散程度大.小表示残方差小,即残差离散程度小.小就表明尽管原始数据很离散,而模型所得计算值与实际值之差并不太离散.1,,0.6745,,,.p p C p 指标越大越好越大表明残差与残差平均值之差小于给定值的点较多即拟合值(或预测值)分布比较均匀.按两个指标可综合评定预测模型的精度模型的精度由后验差和小误差概率共同刻划.一般地,将模型的精度分为四级,见表2-121-表精度检验等级参照表{},,Max p C =模型的精度级别的级别于是的级别3 序列光滑度的理论分析*[(1),(2),,()],:[(1),(2),,()],,()0.5()0.5(1),1,2,,;,(1),:3.1X x x x n Z X Z z z z n z k z k z k k n X x n X ===++=+L L L 设序列是的均值生成序列其中是某一可导函数的代表序列我们将删去后所得的序列仍记为定若满足义11**11(1),()();(2)max ()()max ()()k i k nk nk x k x i x k x k x k z k -=≤≤≤≤<-≥-∑当充分大时,(1),(2).X 则称为光滑序列称为序列光滑条件(0)(0)(0)(0)(0)(0)1(1)(0)1(0)[(1),(2),,()],()()(),2,3,,(1)().k i X x x x n x k x k k k n x k xi X ρ-=====-∑L L 设序列称为序列的光滑比,()1()(,()).,.i k x k k x i k X X k ρρ-∑k-1=1光滑比从另一个侧面反映了序列的光滑性即用序列中第个数据与前个数据的和的比值来考察序列中数序列中的数据变化越平稳其光滑比据变化是否平缓显越小然{}{}(0)1(0)1(0)(0)(1()0)00()()()(),(),1,2,,((),1,2,,,0,.1),.,33k i x k k xi x k x k k n x k k n k k x k k ερε-===<==∀->∃>∑L L 设为非负数据序列当时如果光滑定义光滑为比称离散序列则(1)():(1)1;()2,3,,1;(2)()[0,];2,3,,;(3 3.4)0.5.k X k k k n k k n X ρρρεε+<=-∈=<L L 若序列满足则定义准光称滑序列为{}{}(0)1(0)1(0)())001()(()().()(),(),1,2,,(1(),1,2.1.,),3k i x k k x k k k xi x k x k k n n x k ρε-===<=-=∑L L 设为光滑离散序列的充是的递减函数则称要条件是定理光滑离为:光滑散序列比提高数列的光滑度1 基于函数lnx 变换提高数据序列的光滑度(0)(0)(0)(0)(0)(0)(0)11(0)(0)11(1)()(1)1,ln ()(2)()(1),ln ()()ln ()()k k i i x k x x k x k x e x k x k xi xi --==≥≥≤∑∑若为递增序列,且则是光滑离散序列;若为递增序列,且则002()()(),ln ()()x k x k 由知变换序列具有比原始序列更好的光滑度(0)(0)1(0)(0)111(0)(0)113)()(1)1,1,[ln ()]ln ()[ln ()]ln ()T k k Ti i x k x T x k x k xi xi --==≥>≤∑∑若为递增序列,且则1003()()(),ln ()]ln ()T x k x k 由知变换序列[具有比原始序列更好的光滑度(0)(0)1(0)(0)(0)1111(0)(0)(0)11111(0)(0)(0)11111(0)(0)(0)111(4)()(1),1,[ln ()]ln ()()[ln ()]ln ()()[ln ()][()]()[ln ()][()]()T k k k Ti i i T T k k k TTi i i x k x e T x k x k x k x i xi xi x k x k x k xi xi xi ---===---===≥≥≤≤≤≤∑∑∑∑∑∑若为递增序列,且则20->.()a x a 基于函数变换提高光滑度的方法(0)(0)(0)(0)(0)1(0)(0)(0)(0)1111(0)(0)(0)(0)1111(1)()(1)1,()](0)(2)()(1)1,1,0[()][ln ()]ln ()()[()][ln ()]ln ()()a aT k k k k aTi i i i x k x x k a x k x T a x k x k x k x k xi xi xi xi ------====≥>≥≥>≤≤≤∑∑∑若为递增序列,且则[是光滑离散序列;若为递增序列,且则对于有1-∑1002-()()(),()]ln ()]a T x k x k 由知变换序列[具有比原始序列[更好的光滑度2(),:在应用时应注意以下两点000021≥=≥≥()()()()(),),rrx x xx1.若的条件(1)e 或(1)不成立可选择某个常数c, 使(1)(1)+c e(或最后再还原.02()(),()x k a 2.对的a 可根据实际情况定一般情况下越大,取得越小.3->.()x a a 基于函数变换提高光滑度的方法(0)(0)(0)(0)(0)()(0)(0)1()(0)(0)(0)11111()(0)(0)(0)1111(1)()(1)1,(1)(2)()(1)1,1,1[ln ()]ln ()()[ln ()]ln ()()xk xk T k k k k x i Ti i i i x k x a a x k x T a a x k x k x k axi xi xi 若为递增序列,且则是光滑离散序列;若为递增序列,且则对于有-------====≥>≥≥>≤≤≤∑∑∑∑01021->()()()(),ln ()]x k T a a x k 由知变换序列()具有比序列[更好的光滑度4 灰色GM(1.1)优化模型分析传统GM(1.1)模型背景值对预测精度的影响X0=x%format long ;format short g;[m,n]=size(X0);X1=cumsum(X0); %累加X2=[];for i=2:nlamuda(i)=X0(i-1)/X0(i); endlamudafor i=1:n-1X2(i,:)=X1(i)+X1(i+1);endfor i=1:n-1X2(i,:)=X1(i)+X1(i+1);endfor i=2:nsigema(i)=X0(i)/X1(i-1);endsigema%sigema属于(1,1.5)时,则具有准指数规律,可建立预测模型幂函数变换、对数变换和复合变换m=2/(n+1);ep=[exp(-m) exp(m)]%级比检验lamuda(i)必须落到ep区间内B=-0.5.*X2 ;t=ones(n-1,1);B=[B,t] ; % 求B矩阵YN=X0(2:end) ;Pt=YN./X1(1:(length(X0)-1)) %对原始数据序列X0进行准光滑性检验,Pt∈[0,ε]当ε<0.5 时, 则称x(0)(t)为准光滑序列%序列x0的光滑比P(t)=X0(t)/X1(t-1)A=inv(B.'*B)*B.'*YN.' ;a=A(1)u=A(2)c=u/a ;b=X0(1)-c ;X=[num2str(b),'exp','(',num2str(-a),'k',')',num2str(c)];strcat('X(k+1)=',X)%syms k;for t=1:length(X0)k(1,t)=t-1;endkY_k_1=b*exp(-a*k)+c;for j=1:length(k)-1Y(1,j)=Y_k_1(j+1)-Y_k_1(j);endyuce=[Y_k_1(1),Y] %预测值CA=abs(yuce-X0) ; %残差数列Theta=CA %残差检验绝对误差序列err= CA ./ X0 %相对误差序列如果err<0.2,则可认为达到一般要求,如果err<0.1,则认为达到较高的要求A V=mean(CA); % 残差数列平均值R_k=(min(Theta)+0.5*max(Theta))./(Theta+0.5*max(Theta)) ;% P=0.5R=sum(R_k)/length(R_k) %关联度Temp0=(CA-A V).^2 ;Temp1=sum(Temp0)/length(CA);S2=sqrt(Temp1) ; %绝对误差序列的标准差%----------A V_0=mean(X0); % 原始序列平均值Temp_0=(X0-A V_0).^2 ;Temp_1=sum(Temp_0)/length(CA);S1=sqrt(Temp_1) ; %原始序列的标准差TempC=S2/S1*100 %方差比?C=strcat(num2str(TempC),'%')%方差比均方差比值C 越小越好,C<0.35为好,C<0.5为合格%----------SS=0.675*S1 ;Delta=abs(CA-A V) ;TempN=find(Delta<=SS);N1=length(TempN);N2=length(CA);TempP=N1/N2*100;P=strcat(num2str(TempP),'%') %后验差检验%计算小误差概率P>0.85为合格,P>0.95为好。