灰度预测matlab程序
发布时间:2021-06-06
发布时间:2021-06-06
syms a b;
c=[a b]';
A=input('A=');
m=input('m=');%m的值为A数列的长度 B=cumsum(A);%原始数据累加 n=length(A);
fori=1:(n-1)
C(i)=(B(i)+B(i+1))/2;%生成累加矩阵 end
%计算待定参数的值
D=A;
D(1)=[ ];
D=D';
E=[-C;ones(1,n-1)];
c=inv(E*E')*E*D;
c=c';
a=c(1);b=c(2);
%预测后续数据
F=[];F(1)=A(1);
fori=2:(n+m)
F(i)=(A(1)-b/a)/exp(a*(i-1))+b/a; end
G=[];G(1)=A(1);
fori=2:(n+m)
G(i)=F(i)-F(i-1);%得到预测出来的数据 end
t1=1:m;
t2=1:2m;
G,a,b
plot(t1,A,'o',t2,G,'r')%原始数据与预测值的比较
上一篇:骑马与砍杀:火与剑主线任务
下一篇:真假存储识别妙招解析