📄 greyforecasting.m
字号:
clear
close all
%灰色预测模型
%X0原始数据
%计算原始数据的累加生成值
X0=[2.655 2.819 3.006 3.093 3.277 3.515 3.77 4.107 4.496 4.973 5.451 5.847 6.213 6.775 7.542 8.384 9.138 9.942 10.65 11.198 11.431 12.176 13.51];
n=length(X0);
X1=zeros(1,n);
X1(1)=X0(1);
for i=2:n
X1(i)=X0(i)+X1(i-1);
end
%计算数据矩阵B和数据向量Yn
%采用GM(1,1)模型所对应的数据矩阵为
for i=1:n-1
B(i,1)=-(X1(i)+X1(i+1))/2;
B(i,2)=1;
end
for i=1:n-1
Yn(i,1)=X0(i+1);
end
%计算GM(1,1)微分方程的参数a和u
A=inv(B'*B)*B'*Yn;
%计算预测结果
Xp1=zeros(n,1);
for i=0:n-1+5
Xp1(i+1)=(X0(1)-A(2,1)/A(1,1))*exp(-A(1,1)*i)+A(2,1)/A(1,1);
end
Xp0(1,1)=Xp1(1);
for i=1:n-1+5
Xp0(i+1,1)=Xp1(i+1)-Xp1(i);
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -