MATLAB 灰色模型建立方法详解 - 预测分析与应用
一、建立数据矩阵 将序列数据转化为矩阵形式,每列表示一组数据,每行表示不同的数据点,第一列为原始数据列,如下:
$$
\left[\begin{matrix}
x(1)&x(2)&\cdots &x(n)
x(2)&x(3)&\cdots &x(n+1)
\cdots &\cdots &\cdots &\cdots
x(k)&x(k+1)&\cdots &x(k+n-1)
\end{matrix}\right]
$$
二、计算累加生成函数 根据灰色模型理论,可建立累加生成函数。对于序列$x(1),x(2),\cdots,x(n)$,其对应的累加生成函数为:
$$ \sum_{i=1}^k x(i)=\frac{1}{2}[x(1)+x(2)]k+\sum_{i=1}^{k-1}x(i+1) $$
其中,$k=1,2,\cdots,n$。
三、计算累加量 由累加生成函数可得到累加量序列,即:
$$Y(1)=x(1)$$$Y(2)=x(1)+x(2)$$$$\cdots$$$$Y(n)=\sum_{i=1}^nx(i)$$
四、计算均值生成函数 对于累加量序列$Y(1),Y(2),\cdots,Y(n)$,其均值生成函数为:
$$ \frac{1}{n}\sum_{i=1}^k Y(i)=\frac{1}{n}\sum_{i=1}^k x(i)=\overline{x(k)} $$
其中,$k=1,2,\cdots,n$。
五、计算数据矩阵的级比序列 根据级比公式:
$$ \frac{x(i)}{x(i+1)}=\frac{Y(i)}{Y(n)} $$
可得到级比序列:
$$ \frac{x(1)}{x(2)},\frac{x(2)}{x(3)},\cdots,\frac{x(n-1)}{x(n)} $$
六、建立灰色模型 根据级比序列,可得到其均值:
$$ \overline{k}=\frac{1}{n-1}\sum_{i=1}^{n-1}\frac{x(i)}{x(i+1)} $$
进而得到灰色模型的参数:
$$a=\frac{2}{1+\overline{k}},b=\frac{x(1)-a\cdot x(2)}{1-a}$$
七、预测分析 利用建立的灰色模型,可得到预测值序列:
$$ \hat{x}(n+1)=\frac{x(1)-b/a}{a^{n+1}} $$
其中,$n$为预测时刻,$\hat{x}(n+1)$为预测值。可以通过比较预测值和实际值的误差来评价模型的预测能力。
原文地址: https://www.cveoy.top/t/topic/nCO5 著作权归作者所有。请勿转载和采集!