灰色预测
来源:互联网 发布:java应用程序的入口 编辑:程序博客网 时间:2024/04/19 20:47
1.GM(1,1)
变量一阶,微分方程一阶
1.数列预测
clc,clear
x0=[71.1 72.4 72.4 72.1 71.4 72.0 71.6];
n=length(x0);
lamda=x0(1:n-1)./x0(2:n)
range=minmax(lamda)
x1=cumsum(x0)
for i=2:n
z(i)=0.5*(x1(i)+x1(i-1));
end
B=[-z(2:n)',ones(n-1,1)];
Y=x0(2:n)';
u=B\Y
x=dsolve('Dx+a*x=b','x(0)=x0');
x=subs(x,{'a','b','x0'},{u(1),u(2),x1(1)});
yuce1=double(subs(x,'t',[0:n-1]));
digits(6),y=vpa(x) %为提高预测精度,先计算预测值,再显示微分方程的解
yuce=[x0(1),diff(yuce1)]
epsilon=x0-yuce %计算残差
delta=abs(epsilon./x0) %计算相对误差
rho=1-(1-0.5*u(1))/(1+0.5*u(1))*lamda %计算级比偏差值
说明:delta,rho<0.2,预测可接受
2.灾害预测
挑出异常点组成新的数列,大于上限或者小于下限
对时间求cumsum,来预测下一个发生灾害的时间点
clc,clear
a=[390.6,412,320,559.2,380.8,542.4,553,310,561,300,632,540,406.2,313.8,576,587.6,318.5]';
t0=find(a<=320);
t1=cumsum(t0);n=length(t1);
B=[-0.5*(t1(1:end-1)+t1(2:end)),ones(n-1,1)];Y=t0(2:end);
r=B\Y
y=dsolve('Dy+a*y=b','y(0)=y0');
y=subs(y,{'a','b','y0'},{r(1),r(2),t1(1)});
yuce1=subs(y,'t',[0:n+1])
digits(6),y=vpa(y) %为提高预测精度,先计算预测值,再显示微分方程的解
yuce=diff(yuce1);
yuce=[t0(1),yuce]
- 灰色预测
- 灰色预测
- 灰色预测
- 灰色预测
- 灰色预测法
- 灰色预测代码
- 灰色系统预测模型
- 灰色预测模型
- 灰色理论预测模型
- 灰色预测水果销量
- 灰色预测模型
- 灰色预测模型
- 灰色预测模型
- 灰色预测模型
- 灰色预测模型
- 时间序列之灰色预测
- 灰色预测的MATLAB程序
- Matlab灰色预测和统计分析
- 进程与线程: 一个简单的解释
- 好记性不如烂笔头28-面向业务流的事务控制(6)
- wpa_cli调试工具的使用
- [算法系列之十一]荷兰国旗问题
- ASIHTTPRequest 缓存设置
- 灰色预测
- Python中input和raw_input在命令行中读入文件地址的区别
- java复习第十三课,接受键盘的输入,Scanner类的使用,import介绍
- Intent 常量
- TableLayout
- Android 源码分析,FreeMind 是一件超级利器
- android应用程序如何调用支付宝接口
- 幻立方解法之7阶延展
- ListView嵌套GridView显示不全解决方法