Advertisement

matlab用于灰色预测模型开发

阅读量:

灰色预测流程
(1)导入历史阶段的小规模数据集
(2)设定所需预测的数量
(3)执行计算过程

复制代码
    y=input('请输入数据');
    n=length(y);
    yy=ones(n,1);
    yy(1)=y(1);
    for i=2:n
    yy(i)=yy(i-1)+y(i)
    end
    B=ones(n-1,2);
    for i=1:(n-1)
    B(i,1)=-(yy(i)+yy(i+1))/2;
    B(i,2)=1;
    end
    BT=B';
    for j=1:(n-1)
    YN(j)=y(j+1);
    end
    YN=YN';
    A=inv(BT*B)*BT*YN;
    a=A(1);
    u=A(2);
    t=u/a;
    t_test=input('输入需要预测的个数');
    i=1:t_test+n;
    yys(i+1)=(y(1)-t).*exp(-a.*i)+t;
    yys(1)=y(1);
    for j=n+t_test:-1:2
    ys(j)=yys(j)-yys(j-1);
    end
    x=1:n;
    xs=2:n+t_test;
    yn=ys(2:n+t_t

全部评论 (0)

还没有任何评论哟~