matlab 灰色预测 模型(1,1)

问题描述:

matlab 灰色预测 模型(1,1)
已知2010-1995年碳排放数据为220829635.2\x05202221577.1\x05194158724.5\x05191332533.8\x05175732601.7\x05167898405.8\x05151324016.1\x05142482603.6\x05132492430.6\x05129162245.9\x05118144083.5\x05122058540.6\x05119531875.4\x05119957990\x05121124756.7\x05120036992.6
要求预测2011-2015年的数据,并且要说明a和u的值,后验差检验(p、c)的值,分用完了,但还是很希望有人能帮我解答一下!
1个回答 分类:综合 2014-09-22

问题解答:

我来补答
把数据改一下应该就行了
clc
clear
x0=[1827 1729.3 1431 1231.7 1109.9 768.2 792.9 805.8];
%道路交通事故财产损失原始数据
for i=2:8
x1(1)=x0(1);
x1(i)=x1(i-1)+x0(i);
end
x1
%对原始数据进行累加
for i=1:7
yn(i)=x0(i+1);
end
yn
for i=1:7
b(i)=(-0.5)*(x1(i)+x1(i+1));
end
b
for i=1:7
B(i,1)=b(i);
B(i,2)=1;
end
B
%求得数据矩阵B
c=inv(B'*B)*B'*yn'
a=c(1,1)
u=c(2,1)
%通过最小二乘法求出变量a,u
for t=1:8
x11(t)=u/a+exp(-a*t)*(-u+1827*a)/exp(-a)/a;
end
x11
%建立时间响应函数
q0=x1-x11
for i=2:8
q1(1)=q0(1);
q1(i)=q1(i-1)+q0(i);
end
q1
%残差第一次累加
for i=2:8
q2(1)=q1(1);
q2(i)=q2(i-1)+q1(i);
end
q2
%残差第二次累加
for i=1:7
b1(i)=(-0.5)*(q2(i)+q2(i+1));
end
b1
for i=1:7
B1(i,1)=b1(i);
B1(i,2)=1;
end
B1
c1=inv(B1'*B1)*B1'*yn'
a1=c1(1,1)
u1=c1(2,1)
syms t
q2t=u1/a1+exp(-a1*t)*(-u1+q2(1)*a1)/exp(-a1)/a1;
D=diff(q2t)
%对二次残差求灰导
X=u/a+exp(-a*t)*(-u+1827*a)/exp(-a)/a+D;
C=1:5;
y=subs(X,t,C)
z2012=y(3)-y(2)
z2013=y(4)-y(3)
z2014=y(5)-y(4)
%求得2012-2014年道路交通事故财产损失预测值
 
 
展开全文阅读
剩余:2000
下一页:格子里面填一下