森之张卫东 发表于 2015-8-12 08:35

GM(1,1)模型

GM(1,1)模型<p>%灰色预测模型 GM(1,1)
%修改后,已经能够使用了
%时间:2015-7-2-四
clc,clear
tic;
x0='; %注意这里为列向量
n=length(x0);
disp('计算级比')
lamda=x0(1:n-1)./x0(2:n)  %计算级比
disp('计算级比的范围')
range=minmax(lamda')  %计算级比的范围
x1=cumsum(x0);  %累加运算
B=[-0.5*(x1(1:n-1)+x1(2:n)),ones(n-1,1)];
Y=x0(2:n);
disp('拟合参数 u:')
u=B\Y  %拟合参数u(1)=a,u(2)=b
disp('求微分方程的符号解')
x=dsolve('Dx+a*x=b','x(0)=x0'); %求微分方程的符号解
x=subs(x,{'a','b','x0'},{u(1),u(2),x0(1)}); %代入估计参数值和初始值
yuce1=subs(x,'t',); %求已知数据的预测值
y=vpa(x,6)   %其中的6表示显示6位数字
disp('求已知数据的预测值')
yuce=  %差分运算,还原数据
disp('计算残差')
epsilon=x0'-double(yuce)    %计算残差
disp('计算相对误差')
delta=abs(epsilon./x0')  %计算相对误差
disp('计算级比偏差值,u(1)=a')
rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda'  %计算级比偏差值,u(1)=a</p><p>toc;</p>

ZF710878101 发表于 2016-1-31 19:48

来看看  。。。。。。
页: [1]
查看完整版本: GM(1,1)模型