欢迎来到天天文库
浏览记录
ID:39212214
大小:4.42 MB
页数:18页
时间:2019-06-27
《灰色预测总结》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、灰色系统建模灰色系统理论在建模中的应用:灰色系统理论在建模中被广泛用来处理数据。与插值拟合相比,利用灰色模型处理数据不仅对数据没有很强的限制,而且精度更高,计算更简便。常用的灰色系统生成方式有:累加生成,累减生成,均值生成,级比生成等,下面对这几种生成做简单介绍.累加生成:累减生成:累减生成,即对数列求相邻两数据的差,累减生成是累加生成的逆运算,常简记为IAGO(InverseAccumulatedGeneratingOperation),累减生成可将累加生成还原为非生成数列,在建模过程中用来获得
2、增量信息,其运算符号为∆.GM(1.1)模型建模机理GM(1.1)原理步骤原始数列:对进行一次累加,得到新数列:于是的GM(1.1)白化形式的微分方程为:其中,a,u为待定系数,将(2-16)式离散化,即得:其中,为在(k+1)时刻的背景值因为:将(2-18),(2-19)式代入(2-17)式,得将(2-20)为待辨识参数向量,则(2-21)可写成:参数向量可用最小二乘法求取,即把求取的参数代入(2-16)式,并求出其离散解还原到原始数据得(GM1.1)模型的精度检验1级比检验:为了保证建模方法的
3、可行性,需要对已知数据列做必要的检验处理。原始数列:级比表达式为:2后验差检验法计算后验差比为:计算小误差概率:模型精度等级均方差比值C小误差概率p1级(好)C<=0.350.95<=p2级(合格)0.354、%formatlong;formatshortg;[m,n]=size(X0);X1=cumsum(X0);%累加X2=[];fori=2:nlamuda(i)=X0(i-1)/X0(i);endlamudafori=1:n-1X2(i,:)=X1(i)+X1(i+1);endfori=1:n-1X2(i,:)=X1(i)+X1(i+1);endfori=2:nsigema(i)=X0(i)/X1(i-1);endsigema%sigema属于(1,1.5)时,则具有准指数规律,可建立预测模型幂函5、数变换、对数变换和复合变换m=2/(n+1);ep=[exp(-m)exp(m)]%级比检验lamuda(i)必须落到ep区间内B=-0.5.*X2;t=ones(n-1,1);B=[B,t];%求B矩阵YN=X0(2:end);Pt=YN./X1(1:(length(X0)-1))%对原始数据序列X0进行准光滑性检验,Pt∈[0,ε]当ε<0.5时,则称x(0)(t)为准光滑序列%序列x0的光滑比P(t)=X0(t)/X1(t-1)A=inv(B.'*B)*B.'*YN.';a=A(1)u=A(6、2)c=u/a;b=X0(1)-c;X=[num2str(b),'exp','(',num2str(-a),'k',')',num2str(c)];strcat('X(k+1)=',X)%symsk;fort=1:length(X0)k(1,t)=t-1;endkY_k_1=b*exp(-a*k)+c;forj=1:length(k)-1Y(1,j)=Y_k_1(j+1)-Y_k_1(j);endyuce=[Y_k_1(1),Y]%预测值CA=abs(yuce-X0);%残差数列Theta=CA%7、残差检验绝对误差序列err=CA./X0%相对误差序列如果err<0.2,则可认为达到一般要求,如果err<0.1,则认为达到较高的要求AV=mean(CA);%残差数列平均值R_k=(min(Theta)+0.5*max(Theta))./(Theta+0.5*max(Theta));%P=0.5R=sum(R_k)/length(R_k)%关联度Temp0=(CA-AV).^2;Temp1=sum(Temp0)/length(CA);S2=sqrt(Temp1);%绝对误差序列的标准差%---8、-------AV_0=mean(X0);%原始序列平均值Temp_0=(X0-AV_0).^2;Temp_1=sum(Temp_0)/length(CA);S1=sqrt(Temp_1);%原始序列的标准差TempC=S2/S1*100%方差比?C=strcat(num2str(TempC),'%')%方差比均方差比值C越小越好,C<0.35为好,C<0.5为合格%----------SS=0.675*S1;Delta=abs(CA-AV);TempN=find(Delta<=S
4、%formatlong;formatshortg;[m,n]=size(X0);X1=cumsum(X0);%累加X2=[];fori=2:nlamuda(i)=X0(i-1)/X0(i);endlamudafori=1:n-1X2(i,:)=X1(i)+X1(i+1);endfori=1:n-1X2(i,:)=X1(i)+X1(i+1);endfori=2:nsigema(i)=X0(i)/X1(i-1);endsigema%sigema属于(1,1.5)时,则具有准指数规律,可建立预测模型幂函
5、数变换、对数变换和复合变换m=2/(n+1);ep=[exp(-m)exp(m)]%级比检验lamuda(i)必须落到ep区间内B=-0.5.*X2;t=ones(n-1,1);B=[B,t];%求B矩阵YN=X0(2:end);Pt=YN./X1(1:(length(X0)-1))%对原始数据序列X0进行准光滑性检验,Pt∈[0,ε]当ε<0.5时,则称x(0)(t)为准光滑序列%序列x0的光滑比P(t)=X0(t)/X1(t-1)A=inv(B.'*B)*B.'*YN.';a=A(1)u=A(
6、2)c=u/a;b=X0(1)-c;X=[num2str(b),'exp','(',num2str(-a),'k',')',num2str(c)];strcat('X(k+1)=',X)%symsk;fort=1:length(X0)k(1,t)=t-1;endkY_k_1=b*exp(-a*k)+c;forj=1:length(k)-1Y(1,j)=Y_k_1(j+1)-Y_k_1(j);endyuce=[Y_k_1(1),Y]%预测值CA=abs(yuce-X0);%残差数列Theta=CA%
7、残差检验绝对误差序列err=CA./X0%相对误差序列如果err<0.2,则可认为达到一般要求,如果err<0.1,则认为达到较高的要求AV=mean(CA);%残差数列平均值R_k=(min(Theta)+0.5*max(Theta))./(Theta+0.5*max(Theta));%P=0.5R=sum(R_k)/length(R_k)%关联度Temp0=(CA-AV).^2;Temp1=sum(Temp0)/length(CA);S2=sqrt(Temp1);%绝对误差序列的标准差%---
8、-------AV_0=mean(X0);%原始序列平均值Temp_0=(X0-AV_0).^2;Temp_1=sum(Temp_0)/length(CA);S1=sqrt(Temp_1);%原始序列的标准差TempC=S2/S1*100%方差比?C=strcat(num2str(TempC),'%')%方差比均方差比值C越小越好,C<0.35为好,C<0.5为合格%----------SS=0.675*S1;Delta=abs(CA-AV);TempN=find(Delta<=S
此文档下载收益归作者所有