灰色预测灰色关联分析报告
灰色关联分析法
根据因素之间发展趋势的相似或相异程度,亦即“灰色关联度”,来衡量因素间关联程度。灰色关联分析法的基本思想是根据序列曲线几何形状的相似程度来判断其联系是否紧密。
根据评价目的确定评价指标体系,
为了评价×××我们选取下列评价指标:
收集评价数据(此步骤一般为题目中原数据,便省略)
将m 个指标的n 组数据序列排成m*n 阶矩阵:
''
'
12'''
'''1212'''
1
2(1)(1)(1)(2)(2)(2)(,,,)()()
()n n n n x x x x x x X X X x m x m x m ??
? ?
= ? ? ???
对指标数据进行无量纲化
为了消除量纲的影响,增强不同量纲的因素之间的可比性,在进行关联度计
算之前,我们首先对各要素的原始数据作...变换。无量纲化后的数据序列形成如下矩阵:
01010101(1)(2)
(1)(2)(2)(2)(,,,)()()()n n n n x x x x x x X X X x n x n x n ?? ? ?= ? ???
确定参考数据列
为了比较...【评价目的】,我们选取...作为参考数据列,记作 ''''0000((1),(2),,())T
X x x x n =
计算0()()i x k x k -,得到绝对差值矩阵
求两级最小差和两级最大差
01
1min min ()()min(*,*,*,*,*,*)*n
m
i i k x k x k ==-==
01
1
max max ()()max(*,*,*,*,*,*)*n m
i i k x k x k ==-==
求关联系数
由关联系数计算公式0000min min ()()max max ()()
()()()max max ()()
i i i
k
i
k
i i i i
k
x k x k x k x k k x k x k x k x k ρζρ-+?-=
-+?-,取
0.5ρ=,分别计算每个比较序列与参考序列对应元素的关联系数,得关联系数如
下:
计算关联度
分别计算每个评价对象各指标关联系数的均值,以反映各评价对象与参考序
列的关联关系,并称其为关联度,记为:01
1()m
i i k r k m ζ==∑。经过计算得到关联度:
()()010203...R r r r ==
[注] 如果各指标在综合评价中所起的作用不同,可对关联系数求加权平均
值即01
1(),m
i k i k r W k m m ζ='=?∑ (k=1,)式中k W 为各指标权重。
根据关联度矩阵得出综合评价结果
如果不考虑各指标权重(认为各指标同等重要),*个被评价对象由好到劣依次为: 。
如果存在多个参考数据列,则为优度分析问题,类似的得到关联度矩阵如下:
111213212223313233r r r R r r r r r r ???? ? ?== ? ? ? ?????
从上述关联度矩阵,可以得到如下几点结论:
由1i max =i
γ表明,在...中,【i代表的指标】占有最大的优势,它对...【参
考指标】的贡献最大,其次是,,,。 由ij max =i
γ表明,在*、*、*中,与...【i 代表的指标】联系最为紧密的是...
【j 代表的指标】。
[注] 常用的无量纲化方法有均值化法(见公式(1.1))、初值化法(见公式(1.2))和标准化变换(见公式(1.3))等.或采用插法使各指标数据取值围(或数量级)相同.
'
'
1()()1
()i
m
i
i
k k k k m x x x
==∑ (1.1) '
'()()()
i i i
k k k x x x =
(1.2) x x
s
- (1.3)
灰色系统预测模型GM(1,1)
使用条件
1.数据量不少于4个(大数据、小数据都可精准预测)
2.灰色预测适用于原始数据非负的,具有较强指数规律的序列。
3. 对于(1,1)GM 发展系数a 与级比(0)k σ有: a 的可容区间为(2,2)- 当0.3a -≤时,可以用作中长期预测; 当0.30.5a <-≤时,可用作短期预测中长期慎用; 当0.50.8a <-≤时,作短期预测慎用; 当0.81a <-≤时,用残差修正模型; 当1a ->时,不宜采用模型。 (0)
k σ
的可容区间为
22(,)e e -=(0.1353,7.3891)
建模步骤
设原有数据序列(0)
(0)
(0)
(0)
(1),(2)......(n)(k)0,k 1,2...n x x x x ≥=,它们满足。
[注意剔除异常数据;如原始数据不是非负时作平移变换,令]。
1.求级比,并作建模可行性分析 根据级比公式
(0)(0)
(k 1)
(k)(k)x x σ-=,
求得
当对所有的k 有221
+1
(k)(e ,e )n n σ-+∈时,可用作建模。 [否则对数据再做一定的平移变换使生成数列的级比满足条件。] 2. 数据处理
对(0)()x k 序列做一次累加生成(1)()x k 序列,以弱化原始序列的随机性和波
动性。
即
(1)
(0)1()(),1,2...k
m x k x m k n
===∑,那么有(0)(1)(1)()=(1)-()x k x k x k +。
对(0)(k)x 序列做紧邻均值生成(1)()z k 序列 即(1)(1)(1)
()0.5()0.5(1),2,3...z k x k x k k n =+-=。 3.建立灰微分方程模型
,并确定其参数。
令
(0)(0)(0)(2)(3)()x x Y x n ?? ? ?= ? ? ???,(1)(1)(1)(2)1(3)1()1z z B z n ??- ?- ?= ? ? ?
-??
,则a Y=B b ?? ???。 用MATLAB 最小二乘法求解参数, T -1T T P=(B B)B Y=(a,b)。
接下来求解上面得到的基本模型。 4.建立白化形式的近似微分方程: (1)
(1)dx +ax =b dt
,其中a 为发展系数,b 为灰色作用量 根据其时间响应函数
(1)(1)t (t)(x (1))e a b b
x a a -=-+
解得时间响应序列为:
?(1)(0)
??b b ?(k 1)(x (1))e ??ak x
a a
-+=-+。 由累减生成(0)(1)(1)???(k 1)(k 1)-(k)x
x x +=+,得原始数据序列的预测值(模
型还原值)为
。
5.残差检验:
序号 时间(年/月/...)
原始值 预测值 残差 相对误差
1 2 n
残差、相对误差、平均相对误差与精度p 的定义如下:
(0)(0)?(k)x (k)x
(k)q =- (0)(0)(0)(0)
?(k)(k)x
(k)(k)100%100%(k)x (k)q x x ε-=?=?
2
1
(avg)|(k)|1n k n εε==-∑
p (1(avg))100%ε=-? 当=****<10%,p=****>90%时,模型精度较高,可进行预报和预测。
Verhulst 模型
Verhulst 模型主要用来描述具有饱和状态的过程,即 S 形过程,常用于人口预测、生物生长、繁殖预测及产品经济寿命预测等。
1.数据处理
对(0)()x k 序列做一次累加生成(1)()x k 序列,以弱化原始序列的随机性和波
动性。
即
(1)
(0)1()(),1,2...k
m x k x m k n
===∑,那么有(0)(1)(1)()=(1)-()x k x k x k +。
对(0)(k)x 序列做紧邻均值生成(1)
()z k 序列 即
(1)(1)(1)()0.5()0.5(1),2,3...z k x k x k k n =+-=。 2.建立 Verhulst 模型 ,并确定其参数。
令
(0)(0)(0)(2)(3)()x x Y x n ??
?
?= ? ? ???
,()()()2
(1)(1)
2(1)(1)
2(1)(1)
(2)
(2)(3)(3)()(n)z z z z
B z n z ??
- ? ?- ?
= ? ? ?-??
,则a Y=B b ?
? ???。
用MATLAB 最小二乘法求解参数,T -1T T P=(B B)B Y=(a,b)。
4.建立白化形式的近似微分方程:
,其中a 为发展系数,b 为灰色作用量
根据其时间响应函数
(0)(1)(0)x (1)
(t)x (1)()e at a x b a b -=
+-
解得时间响应序列为:
(0)(1)(0)x (1)
(1)x (1)()e ak a x k b a b -+=
+-。
由累减生成(0)(1)(1)???(k 1)(k 1)-(k)x x x +=+,得原始数据序列的预测值(模
型还原值)为
。
序号 时间(年/月/...)
原始值 预测值 残差 相对误差
1 2 n
残差、相对误差、平均相对误差与精度p 的定义如下:
(0)(0)?(k)x (k)x
(k)q =- (0)(0)(0)(0)?(k)(k)x
(k)(k)100%100%
(k)x (k)q x x ε-=?=?
2
1
(avg)|(k)|
1n k n εε==-∑
p (1(avg))100%ε=-? 当=****<10%,p=****>90%时,模型精度较高,可进行预报和预测。