码迷,mamicode.com
首页 > 其他好文 > 详细

灰色预测GM(1,1)

时间:2014-07-23 22:26:37      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:数据   for   应用   程序   数学   x   

% 本程序主要用来计算根据灰色理论建立的模型的预测值。
% 应用的数学模型是GM(1,1)。
% 原始数据的处理方法是一次累加法。y=input(‘请输入数据‘);%输入数据请用如例所示形式:[48.7 57.17 68.76 92.15]
n=length(y);
yy=ones(n,1);
yy(1)=y(1);
for i=2:n 
yy(i)=yy(i-1)+y(i);
end 
B=ones(n-1,2);
for i=1:(n-1) 
   
B(i,1)=-(yy(i)+yy(i+1))/2;
   
B(i,2)=1;
end
BT=B‘;
for j=1:n-1
   
YN(j)=y(j+1);
end
YN=YN‘; 
A=inv(BT*B)*BT*YN;
a=A(1);
u=A(2); 
t=u/a; 
t_test=input(‘请输入需要预测个数:‘);
i=1:t_test+n; 
yys(i+1)=(y(1)-t).*exp(-a.*i)+t;
yys(1)=y(1);
for j=n+t_test:-1:2
   
ys(j)=yys(j)-yys(j-1);
end
x=1:n;
xs=2:n+t_test;
yn=ys(2:n+t_test);
plot(x,y,‘^r‘,xs,yn,‘*-b‘);
det=0;
for i=2:n 
   
det=det+abs(yn(i)-y(i));
end 
det=det/(n-1); 
disp([‘百分绝对误差为:‘,num2str(det),‘%‘]);
disp([‘预测值为:‘,num2str(ys(n+1:n+t_test))]);
 

灰色预测GM(1,1),布布扣,bubuko.com

灰色预测GM(1,1)

标签:数据   for   应用   程序   数学   x   

原文地址:http://www.cnblogs.com/loving-wenqure/p/3863969.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!