小弟最近在看《GM(1,1)模型灰色作用量的优化》这篇论文,对其中的计算用matlab,代码如下,(鄙人水平极其有限,对该软件只会简单操作)求得a,b,c与文中结果相同,但最终运行结果差别巨大,很久也没发现错在哪,今特意注册账号恳请各位前辈指点纠正,感激不尽:
clear;clc;
y1=[5425.1 5854 6280 6859.6 7702.8 8472.2];
n=6;
for i=1:n
x1(i)=sum(y1(1:i));
end
y=[y1(2:n)]';
for i=2:n
x(i)=0.5*x1(i-1)+0.5*x1(i);
end
x=x(2:n);
x=[-x;ones(1,n-1);2:n]';
A=x\y;
a=A(1);
b=A(2);
c=A(3);
for i=1:n+2
xy(i+1)=(1-exp(a))*(y1(1)-b/a-c/a+c/(a^2))*exp(-i*a)+c/a;%问题应该在这,这里我加上了c/a,论文中没有,核算过一次,好像文中式子漏掉了这个,也可能我算错了,但不管加与否,都对不上
end
xy(1)=y1(1);
xy


雷达卡


京公网安备 11010802022788号







