用matlab编程灰色预测模型(1,1)

已知2001-2008年火灾事故起数为1879、2208、2948、2852、2774、2926、4680、3691,要求预测2009-2013年的数据,并且要说明a和u的值,并计算总的预测精度,希望有人能帮我解答一下!

定义函数:
function pre = GM11(x)
%x,建模数据序列x = [x(1),x(2),...,x(n)]
% pre,由GM11模型得到的预测值,即由x估计出的x(n+1)
n = length(x);
x1 = cumsum(x);
z1 = (x1(1:n-1)+x1(2:n))/2;
Y = x(2:length(x))';
B = [-z1',ones(n-1,1)];
A = (B'*B)\B'*Y;%GM(1,1)模型的a,b参数组成的向量.
beta = A(2)/(1+.5*A(1));
alpha = A(1)/(1+.5*A(1));
%初始序列x0(k)模拟后的随时间t变化的序列
f = @(t)(beta-(alpha)*x(1))*exp(-(A(1)*(t-2)));
pre = f(n+1);

调用
x=[1879 2208 2948 2852 2774 2926 4680 3691];
GM11(x)追问

不好用啊,而且用的公式好像也不对,你看看这个http://zhidao.baidu.com/question/95043470.html

就是结果太多了,不知道预测值怎么这么多,怎么改?谢谢

温馨提示:答案为网友推荐,仅供参考
相似回答