1、我们将信息完全明确的系统称为白色系统,信息未知的系统称为黑色系统,部分信息明确、部分信息不明确的系统称为灰色系统。
灰色系统着重外延明确、内涵不明确的对象,模糊数学着重外延不明确、内涵明确的对象。
2、GM(1,1)的灰色预测
1)数据的检验与处理:计算数列的级比,若都落在可容覆盖内则数据可以进行预测,否则进行平移变化
2)建立模型
a.建立灰微分方程确定参数的值
b.应用上述参数值解白微分方程
3)检验预测值:残差检验,级比偏差值检验
3、GM(1,1)模型程序
1 %%GM(1,1)%% 2 function [x_0,u,range,derror,rho]=gm11(x0) %x0为列向量 3 n=length(x0); 4 lamda=x0(1:n-1)./x0(2:n); 5 range=minmax(lamda');%计算级比的范围 6 x1=cumsum(x0); 7 B=[-0.5*(x1(1:n-1)+x1(2:n)),ones(n-1,1)]; 8 Y=x0(2:n); 9 u=BY; 10 x1=(x0(1)-u(2)/u(1))*exp(-u(1)*[0:n-1])+u(2)/u(1); 11 x_0=[x0(1),diff(x1)];%模型预测数据 12 error=x0'-x_0;%残差 13 derror=abs(error./x0');%相对误差 14 rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda';%级比偏差值 15 end
GM(2,1)模型程序
1 %%GM(2,1)%% 2 function [x_0,u,range,derror]=gm21(x0) %x0为行向量 3 n=length(x0); 4 x1=cumsum(x0); 5 dx0=diff(x0)'; 6 z=0.5*(x1(2:end)+x1(1:end-1))'; 7 B=[-x0(2:end)',-z,ones(n-1,1)]; 8 u=Bdx0; 9 x=dsolve('D2x+a1*Dx+a2*x=b','x(0)=c1,x(5)=c2'); 10 x=subs(x,{'a1','a2','b','c1','c2'},{u(1),u(2),u(3),x1(1),x1(n)}); 11 x1=subs(x,'t',0:n-1); 12 x_0=[x0(1),diff(x1)];%模型预测数据 13 error=x0-x_0;%残差 14 derror=abs(error./x0);%相对误差 15 end