一、简介
1 名称由来
灰色模型(Gray Model),邓聚龙教授1982年提出。
常见系统分类:
白色系统是指一个系统的内部特征是完全 已知的,即系统的信息是完全充分的。
黑色系统是指一个系统的内部信息对外界来说是一无所知的,只能通过它与外界的联系来加以观测研究。
灰色系统内的一部分信息是已知的,另一部分信息是未知的,系统内各因素间有不确定的关系。
2 算法原理
二、源代码
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
axis=[1999.00,2000.00,2001.00,2002.00,2003.00,2004.00,2005.00,2006.00,2007.00,2008.00,2009.00,2010.00];%年份
a=[3422.00,3565.00,3866.00,4134.00,5118.00,5855.00,6842.00,7196.00,10320.00,13411,15800,21600];%房价
a1=leija(a,12);%得到X1(k)
f=[0];
bf=cat(2,f,a1);
bf2=cat(2,a1,f);
bf3=ones(11,1);
B=-0.5*(bf+bf2);
B=B(2:12)';
B=cat(2,B,bf3);%得到矩阵B
Y=a(2:12)';%得到矩阵Y
A=(inv(B'*B))*B'*Y;%得到矩阵A
anum=A(1)
bnum=A(2)%两个系数
a1yuce=zeros(1,11);
for i=0:11
a1yuce(i+1)=(a(1)-bnum/anum)*exp(-anum*i)+bnum/anum;
end %生成X1(k)预测值
ayuce=leijian(a1yuce,12);%生成X(k)预测值
plot (axis,ayuce,'g')
hold on
plot(axis,a,'r')%做出图形
hold on
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%求的绝对残差序列
chazhi=(ayuce-a).^2;
chazhi=sqrt(chazhi);
%相对残差序列
xiangdui=chazhi./a;
%平均相对残差
meanxd=mean(xiangdui);
%求关联度
ayuce1=ayuce./ayuce(1);
a1=a./a(1);
zuix=zeros(1,12);
zuid=zeros(1,12);
for i=1:12
zuix(i)=min(sqrt((ayuce1(i)-a1).^2));
zuid(i)=max(sqrt((ayuce1(i)-a1).^2));
end
zuixiao=min(zuix');
zuida=max(zuid');
e=zeros(1,12);
for i=1:12
e(i)=(zuixiao+0.5*zuida)/(abs(ayuce1(i)-a1(i))+0.5*zuida);
end
R=mean(e)
%后验差检验
%原始序列的均值
meana=mean(a);
%原始序列的均方差
S1=sqrt(sum((a-meana).^2)/11);
%残差的均值
meanchazhi=mean(chazhi);
S2=sqrt(sum((chazhi-meanchazhi).^2)/11);
%方差比
C=S2/S1
%残差概率
k=0;
for i=1:12
if abs((chazhi(i)-meanchazhi))<0.6745*S1
k=k+1;
end
end
P=k/12
%GM(1,1)残差模型
eyuce=yuce(e,12);
ayuce=ayuce-eyuce;
%plot(axis,ayuce,'k')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%求的绝对残差序列
chazhi=(ayuce-a).^2;
chazhi=sqrt(chazhi);
%相对残差序列
xiangdui=chazhi./a;
%平均相对残差
meanxd=mean(xiangdui);
%求关联度
ayuce1=ayuce./ayuce(1);
a1=a./a(1);
zuix=zeros(1,12);
zuid=zeros(1,12);
for i=1:12
zuix(i)=min(sqrt((ayuce1(i)-a1).^2));
zuid(i)=max(sqrt((ayuce1(i)-a1).^2));
end
zuixiao=min(zuix');
zuida=max(zuid');
e=zeros(1,12);
for i=1:12
e(i)=(zuixiao+0.5*zuida)/(abs(ayuce1(i)-a1(i))+0.5*zuida);
end
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
- 51.
- 52.
- 53.
- 54.
- 55.
- 56.
- 57.
- 58.
- 59.
- 60.
- 61.
- 62.
- 63.
- 64.
- 65.
- 66.
- 67.
- 68.
- 69.
- 70.
- 71.
- 72.
- 73.
- 74.
- 75.
- 76.
- 77.
- 78.
- 79.
- 80.
- 81.
- 82.
- 83.
- 84.
- 85.
- 86.
- 87.
- 88.
- 89.
- 90.
- 91.
- 92.
- 93.
- 94.
- 95.
- 96.