灰色预测MATLAB程序

灰色预测MATLAB程序

ID:37085283

大小:354.06 KB

页数:8页

时间:2019-05-17

灰色预测MATLAB程序_第1页
灰色预测MATLAB程序_第2页
灰色预测MATLAB程序_第3页
灰色预测MATLAB程序_第4页
灰色预测MATLAB程序_第5页
资源描述:

《灰色预测MATLAB程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、.灰色预测..........作用:求累加数列、求ab的值、求预测方程、求残差clc%清屏,以使结果独立显示x=[71.172.472.472.171.472.071.6];formatlong;%设置计算精度iflength(x(:,1))==1%对输入矩阵进行判断,如不是一维列矩阵,进行转置变换x=x';endn=length(x);%取输入数据的样本量z=0;fori=1:n%计算累加值,并将值赋予矩阵bez=z+x(i,:);be(i,:)=z;endfori=2:n%对原始数列平行移位y(i-1,:)=x(i,:);en

2、dfori=1:n-1%计算数据矩阵B的第一列数据c(i,:)=-0.5*(be(i,:)+be(i+1,:));..endforj=1:n-1%计算数据矩阵B的第二列数据e(j,:)=1;endfori=1:n-1%构造数据矩阵BB(i,1)=c(i,:);B(i,2)=e(i,:);endalpha=inv(B'*B)*B'*y;%计算参数矩阵即ab的值fori=1:n+1%计算数据估计值的累加数列,如改为n+1为n+m可预测后m-1个值ago(i,:)=(x(1,:)-alpha(2,:)/alpha(1,:))*exp(-

3、alpha(1,:)*(i-1))+alpha(2,:)/alpha(1,:);%显示输出预测值的累加数列endvar(1,:)=ago(1,:)%显示输出预测值fori=1:n%如改n为n+m-1,可预测后m-1个值var(i+1,:)=ago(i+1,:)-ago(i,:);%估计值的累加数列的还原,并计算出下一预测值endfori=1:nerror(i,:)=x(i,:)-var(i,:);%计算残差endc=std(error)/std(x);%调用统计工具箱的标准差函数计算后验差的比值cago%显示输出预测值的累加数列a

4、lpha%显示输出参数数列var%显示输出预测值error%显示输出误差c%显示后验差的比值作用:数据处理判断是否可以用灰色预测、求级比、求累加数列、求ab的值、求预测方程clc,clearx0=[71.172.472.472.171.472.071.6]';%注意这里为列向量n=length(x0);lamda=x0(1:n-1)./x0(2:n)%计算级比range=minmax(lamda')%计算级比的范围x1=cumsum(x0)%累加运算B=[-0.5*(x1(1:n-1)+x1(2:n)),ones(n-1,1)];

5、Y=x0(2:n);u=BY%拟合参数u(1)=a,u(2)=bx=dsolve('Dx+a*x=b','x(0)=x0');%求微分方程的符号解..x=subs(x,{'a','b','x0'},{u(1),u(2),x0(1)})%代入估计参数值和初始值yuce1=subs(x,'t',[0:n-1]);%求已知数据的预测值y=vpa(x,6)%其中的6表示显示6位数字yuce=[x0(1),diff(yuce1)]%差分运算,还原数据.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。