灰色预测

matlab灰色预测(例题及代码)

会有一股神秘感。 提交于 2020-02-16 00:01:03
文章目录 参考例题 灰色预测模型GM(1,1) 参考例题 1、题目: 2、程序: clear syms a b ; c = [ a b ] ' ; A = [ 89677 , 99215 , 109655 , 120333 , 135823 , 159878 , 182321 , 209407 , 246619 , 300670 ] ; B = cumsum ( A ) ; % 原始数据累加 n = length ( A ) ; for i = 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 ) ; for i = 2 : ( n + 10 ) F ( i ) = ( A ( 1 ) - b / a ) / exp ( a * ( i - 1 ) ) + b / a ; end G = [ ] ; G ( 1 ) = A ( 1 ) ;

优化算法 | 灰色预测模型算法GM(1,1)流程分析

六月ゝ 毕业季﹏ 提交于 2019-12-06 01:50:46
灰色预测模型 (Gray Forecast Model) 是通过少量的、不完全的信息,建立数学模型并做出预测的一种预测方法 灰色预测模型适用于小样本,含有不确定性因素的系统 首先,假如给定一组数据 X1={x11,x12,x13…x1n},你需要预测x1(n+1)的值是多少 这里可以使用灰度预测模型也就是GM(1,1)来进行预测 首先生成累加序列X2, x21=x11, x22=x11+x12 …. x2(n)=x11+x12+x13+…x1(n) 于是得到了一个新的序列X2 这里还需要用到一个一次后减的公式,也就是∆x1i=x1(i)-x1(i-1) 现在我们假设累加序列X2符合一阶常微分方程(这里的一阶指的是只有一阶导数,常微分指的是系数为常数) (dx2i)/(di) + a*x2i = u 公式(1.1) 其中的a和u分别称为发展灰数和内生控制灰数 当i=t0,的时候x2(i) = x2(t0) 因此可以得到一个公式 (dx2(t0))/(d(t0)) + a*x2(t0) = u 公式(1.2) 综合1.1和1.2可以得到公式 x2(i) = [x2(t0) – (u/a)]*e^(-a*(i-t0)) +u/a // 我也不知道是怎么推导出来的 对导数部分(dx2(t0))/(d(t0))进行对等间隔取样,并且将t0设置为1,公式会变成 x2(k+1) = [x2(1)

灰色预测

天大地大妈咪最大 提交于 2019-11-27 10:10:54
灰色预测 灰色预测法是一种对含有不确定因素的系统进行预测的方法 灰色预测是对既含有已知信息又含有不确定信息的系统预测,就是对在一定范围内变化的、与时间有关的灰色过程进行预测 灰色预测通过鉴别系统因素之间发展趋势的相异程度,即进行关联分析,并对原始数据进行生成处理来寻找系统变动的规律,生成较强规律性的数据序列,然后建立相应的微分方程模块,从而预测事物未来发展趋势的状态 等时距观测到的反映预测对象特征的一系列数量值构建灰色预测模型,预测未来某一时刻的特征量,或达到某一个特征量的时间 灰色时间序列预测:用观察到的反映预测对象特征的时间序列来构建灰色预测模型,预测未来的某一段时间特征量,或达到某一特征量的时间 畸变预测:通过灰色模型预测异常值的出现的时刻,预测异常值什么时候会出现在特定时区内 来源: https://www.cnblogs.com/cznczai/p/11358261.html