数学建模预测方法之 灰度预测

灰度预测模型

核心体系是Grey Model.即对原始数据作累加生成(或其他处理生成)得到近似的指数规律再进行建模的方法。

在处理较少的特征值数据,不需要数据的样本空间足够大,就能解决历史数据少、序列的完整性以及可靠性低的问题,能将无规律的原始数据进行生成得到规律较强的生成序列。

只适用于中短期的预测,只适合近似于指数增长的预测。

该模型使用的不是原始数据的序列,而是生成的数据序列。 目的是得到指数增长的序列。

  • 累加生成
  • 累减生成
  • 加权邻值生成

灰度预测模型的步骤:

数据的检验与处理
  • 级比检验
    在这里插入图片描述

    如果级比不满足下列的关系:
    在这里插入图片描述
    需要进行一定的数据处理,最常用的是平移处理: +c
    在这里插入图片描述

建立GM(1,1)模型
预测值检验
  • 残差检验
    在这里插入图片描述
    如果对所有的结果<0.1,则认为达到较高的要求;
    如果对所有的结果<0.2,则认为达到一般的要求。

  • 级比偏差值检验
    在这里插入图片描述
    若结果<0.1,则认为达到较高要求;
    若结果<0.2,则认为达到一般要求;

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) %累加运算
B=[ -0.5*(x1(1:n-1) +x1(2:n)),ones(n-1,1)];
Y = x0(2:n);
u=B\Y %号拟合参数u(1) =a,u(2) =b
syms x(t)
x = dsolve(diff(x) +u(1)*x==u(2),x(0)==x0(1)); %求微分方程的符号解
xt =vpa(x,6) %以小数格式显示微分方程的解
yuce1 = subs(x,t,[0:n-1]); %求已知数据的预测值
yuce1 = double(yuce1); %符号数转换成数值类型,否则无法做差分运算
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' %计算级比偏差值,u(1)=a

你可能感兴趣的:(数学建模,数据分析,数学建模,灰度预测)