基于反余弦函数与幂函数变换与背景值组合优化的灰色预测模型方法与流程

文档序号:14195387阅读:216来源:国知局
基于反余弦函数与幂函数变换与背景值组合优化的灰色预测模型方法与流程

本发明涉及数据预测技术领域,具体涉及一种初始序列与背景值组合优化的灰色预测模型方法。



背景技术:

科学准确的预测公路客运量,掌握未来的公路客运量发展的趋势、特点、规律与数量,为制定相关道路决策作依据。传统的预测方法有三百多种,其中客运量预测较为常用的是回归预测法,但该方法的预测精度受限于客运量影响因素的选取。本发明将使用改进的gm(1,1)模型进行预测;gm(1,1)模型预测精度高、计算简单。

然而经典的gm(1,1)模型存在很多缺陷,根据调查研究,初始序列的光滑度与背景值的精确性对预测精度的影响较大。传统的研究都停在对一个方面的优化,本发明对现有的方法进行了改进,将幂函数融入反余弦函数,并对背景值的构造进行了改进,提出了基于函数变换与背景值组合优化的gm(1,1)预测模型。



技术实现要素:

为解决现有技术的不足,本发明的目的在于提出了一种基于函数变换与背景值组合优化的gm(1,1)预测模型方法,能够有效适应各种数据变化类型,有效的提高模型的预测精度。

为了实现上述目标,本发明采用如下的技术方案:

基于反余弦函数与幂函数变换与背景值组合优化的灰色预测模型方法,包括如下步骤:

步骤一,根据预测目标选取预测模型所采用的原始数据序列,此原始数据序列为一组非负递增数数据序列,记为x(0)

设原始数据序列为:

x(0)={x(0)(1),···,x(0)(n)};

式中,x(0)(i)>0i=1,···,n;

步骤二,对初始序列x(0)进行预处理,将所有数据的范围控制在区间[0,1]内,记为f(0),预处理的公式如下式所示:

式中,x(0)(k)为初始序列中第k个值,m为大于x(0)序列中所有的数,可按实验人员偏好自行选取,f(0)(k)为经过预处理后序列中第k个值;

步骤三,对f(0)序列进行函数变换,得到新的数据序列r(0)计算公式如下式所示:

式中,r(0)(k)为经过函数变换得到序列的第k个值;

步骤四,对原始数据序列r(0)做一次累加处理,计算公式如下式所示:

式中,r(1)(k)为原始数据r(0)(k)的一次累加序列,累加序列记为:

r(1)={r(1)(1),···,r(1)(n)};

步骤五,一次累加序列r(1)满足白色微分方程采用背景值计算公式计算z(1)(k)与矩阵b,y,利用最小二乘法求出参数a、u,

z(1)(k)通过下式进行计算:

z(1)(k+1)=β·r(1)(k)+(1-β)·r(1)(k+1)(k=1,···,n-1;0≤β≤1);

矩阵b、y与参数a、u通过下式进行计算:

(a,u)t=(btb)-1bty;

步骤六,基于求解出的参数a、u,建立时间响应序列并还原求解出序列的预测值

通过求解白色微分方程带入参数a、u可以得到时间响应函数为:

上式离散化得:

式中,r(1)(1)=r(0)(1),为预测值;

通过下式进行计算:

步骤七,还原预测值;通过还原公式计算预测值的还原值,记为还原公式如下式所示:

步骤八,计算相对误差;根据步骤七求解出原始数据序列的预测值后,根据以下公式进行误差检验以判断gm(1,1)模型的预测精度;

前述的基于反余弦函数与幂函数变换与背景值组合优化的灰色预测模型方法,步骤三中,分别取0.1、0.5、0.9,根据取各个值使用函数变换后再使用gm(1,1)模型预测得到各个值的相对误差,最终选取最小的相对误差作为本发明的最小相对误差计算值。

前述的基于反余弦函数与幂函数变换与背景值组合优化的灰色预测模型方法,步骤五中,背景值z(1)(k)中不确定常量β的取值可以通过穷举法确定,β从0开始以精度0.01增长,当达到1结束循环,最终选取使相对误差最小的β值。

本发明的有益之处在于:

本发明提出的初始序列基于函数变换的优化方案,将幂函数融入到初始序列处理函数中,提供了一种新的初始序列变换函数,与传统的arccosx函数变换相比,本发明是传统方法的进一步拓展,不仅可以提高初始序列的光滑度,相较于传统方法,预测精度也有了很大的提高。

本发明提出的基于穷举法的背景值构造,与传统梯形公式构造背景值相比,本发明是传统方法的进一步拓展,能够提高背景值的搜索范围,相较于传统方法预测精度有了很大的提高。

附图说明

图1是本发明预测模型的运行流程图;

图2是本发明函数图像的参造图;

图3是本发明对原始数据序列做一次累加处理的流程图;

图4是本发明β选择方法的流程图;

图5是本发明与现有技术两种方法的拟合值与实际值的折线图。

具体实施方式

以下结合附图和具体实施例对本发明作具体的介绍。

基于反余弦函数与幂函数变换与背景值组合优化的灰色预测模型方法,包括如下步骤:

步骤一,根据预测目标选取预测模型所采用的原始数据序列,此原始数据序列为一组非负递增数数据序列,记为x(0)

设原始数据序列为:

x(0)={x(0)(1),···,x(0)(n)};

式中,x(0)(i)>0i=1,···,n;

步骤二,对初始序列x(0)进行预处理,将所有数据的范围控制在区间[0,1]内,记为f(0),预处理的公式如下式所示:

式中,x(0)(k)为初始序列中第k个值,m为大于x(0)序列中所有的数,可按实验人员偏好自行选取,f(0)(k)为经过预处理后序列中第k个值;

步骤三,对f(0)序列进行函数变换,得到新的数据序列r(0)计算公式如下式所示:

式中,r(0)(k)为经过函数变换得到序列的第k个值;

步骤四,对原始数据序列r(0)做一次累加处理,具体过程参照图3计算公式如下式所示:

式中,r(1)(k)为原始数据r(0)(k)的一次累加序列,累加序列记为:

r(1)={r(1)(1),···,r(1)(n)};

步骤五,一次累加序列r(1)满足白色微分方程采用背景值计算公式计算z(1)(k)与矩阵b,y,利用最小二乘法求出参数a、u,

z(1)(k)通过下式进行计算:

z(1)(k+1)=β·r(1)(k)+(1-β)·r(1)(k+1)(k=1,···,n-1;0≤β≤1);

矩阵b、y与参数a、u通过下式进行计算:

(a,u)t=(btb)-1bty;

步骤六,基于求解出的参数a、u,建立时间响应序列并还原求解出序列的预测值

通过求解白色微分方程带入参数a、u可以得到时间响应函数为:

上式离散化得:

式中,r(1)(1)=r(0)(1),为预测值;

通过下式进行计算:

步骤七,还原预测值;通过还原公式计算预测值的还原值,记为还原公式如下式所示:

步骤八,生成一次累加序列,计算相对误差;根据步骤七求解出原始数据序列的预测值后,根据以下公式进行误差检验以判断gm(1,1)模型的预测精度;

需进一步说明的步骤三中,取值为0.1、0.5、0.9,根据取各个值使用组合变换后再使用gm(1,1)模型预测得到各个值的相对误差,最终选取最小的相对误差作为本发明的最小相对误差计算值。

需进一步说明的步骤五中,背景值z(1)(k)中不确定常量β的取值可以通过穷举法确定,β从0开始以精度0.01增长,当达到1结束循环。最终选取使相对误差最小的β值,具体穷举过程参照图4.

光滑度提高的理论证明

为了证明本发明可以提高初始序列的光滑度,本发明从光滑度的定义方面进行证明。

定义1.1设x(0)={x(0)(k),k=1,2,···,n}为非负数据序列,如果则称x(0)为光滑离散序列。

定理1.1x(0)={x(0)(k),k=1,2,···,n}为光滑离散序列的充要条件是是k的递减函数。

定理1.2设有两种数据变换分别为f(x)和g(x),若对任意的非负序列x(k)均有:

则称变换f(x)提高序列的光滑度的效果优于变换g(x)。

证明1:经过函数变换后的序列为光滑离散序列。

初始序列x(0)为非负单调递增函数,通过预处理使其满足区间[0,1]的单调增函数序列f(0),已知反余弦函数在[0,1]上为单调递减函数,本发明所使用的变换函数具体图像如图2所示。

0<f(0)(k)<1

即:

即函数关于k的单调递减函数,即有:

又因为反余弦函数在区间[0,1]上是大于零的,即有:

因为不等式两边都是大于零的数,将上面两个式子不等式两边进行相乘,不等式符号不变,得到下式:

进行调整后得下式:

根据定理1.1可知经过函数变换后的序列为光滑离散序列。

证明2:经过函数变换后的序列光滑度优于初始序列的光滑度。

令,

对上式进行求导,得下式:

根据上式可知h'(x)≤0,即证明h(x)为减函数,即有:

不等式两边进行整理后得到下式:

对1,···,k-1分别进行上式计算,不等号方向不变化,所有式子求和后得到如下:

将上式整理后得到下式:

根据定理1.2可知,函数变换能够提升初始序列光滑度。

为了证明本发明具有更小的平均相对误差,有效的提高模型的预测精度;通过将我国1990-2002年的客运量序列作为研究对象(单位:万人),将经典的灰色模型(参见文献1:邓聚龙.灰色系统基本方法[m].武汉:华中理工大学出版社,1987.)与初始序列基于变换的gm(1,1)模型(参见文献2:李晔,卢珊,董奋义.基于反余弦函数变换的灰色预测模型研究[j].数学的实践与认识,2016,46(11):252-254)与本发明提出的方法进行比较,根据相对误差的比较来分析方法的优劣。

本发明提出方法的计算步骤:

(1)我国1990-2002年的客运量的原始数据序列为:

(2)对初始序列x(0)进行预处理,将所有数据的范围控制在区间[0,1]内,记为f(0)

(3)对f(0)序列进行函数变换,得到新的数据序列,记为r(0)

(4)对原始数据序列r(0)做一次累加处理,生成一次累加序列r(1),计算公式与所得序列如下所示:

(5)对一次累加序列r(1)采用背景值计算公式计算z(1)(k)与矩阵b,y,利用最小二乘法求出参数a、u;

z(1)(k)通过下式进行计算:

z(1)(k+1)=β·r(1)(k)+(1-β)·r(1)(k+1)(k=1,···,n-1;0≤β≤1)

矩阵b、y与参数a、u通过下式进行计算:

(a,u)t=(btb)-1bty

(6)基于求解出的参数a、u,建立时间响应序列并还原求解出序列的预测值

通过白色微分方程的求解,带入参数a、u可以得到时间响应函数为:

上式离散化得:

式中,r(1)(1)=r(0)(1),为预测值。

通过下式进行计算:

(7)通过还原公式计算预测值的还原值,记为还原公式如下式所示:

(8)本发明取为0.1、0.5、0.9,根据取各个值使用组合变换后再使用gm(1,1)模型预测得到各个值的相对误差,最终选取最小的相对误差作为本发明的最小相对误差计算值。

用表1证明本发明在初始序列经过变换后,结合使用背景值组合优化能够降低误差;

表1不采用背景值优化与采用背景值优化的拟合结果

通过表1实验证明了在参数取值确定的情况下,采用背景值优化能够提高预测精度,证明了背景值优化方案的有效性,且在时得到的预测精度最高为1.5606%,该值作为本发明的预测精度。

文献1中邓聚龙教授提出的经典的gm(1,1)模型计算:

响应函数的确定:

预测值的还原:

文献2初始序列基于cosx变换的gm(1,1)模型

(1)我国1990-2002年的客运量的原始数据序列为:

(2)对初始序列x(0)进行预处理,将所有数据的范围控制在区间[0,1]内,记为f(0)

(3)对f(0)序列进行arccosx函数变换,得到新的数据序列,记为r(0)

r(0)(k)=arccosf(0)(k)

(4)对原始数据序列r(0)做一次累加处理,生成一次累加序列r(1)

对一次累加序列r(1)采用背景值计算公式计算z(1)(k)与矩阵b,y,利用最小二乘法求出参数a、u;

z(1)(k)通过下式进行计算:

(6)基于求解出的参数a、u,建立时间响应序列并还原求解出序列的预测值

r(1)(k+1)=-13.3891e-0.0876k+14.4881

通过下式进行计算:

(7)通过还原公式计算预测值的还原值为

通过上述三种计算方法对我国1990-2002年的客运量行拟合计算,计算结果如表2所示。

表2三种计算方法的拟合结果

根据上表所示,本发明提出的改进的gm(1,1)模型平均相对误差为1.56%,经典灰色模型的平均相对误差为3.83%,初始序列基于arccosx函数变换的gm(1,1)模型的平均相对误差为2.07%,因此本发明提出的改进的gm(1,1)方法误差较低,精度提升较为明显,拟合结果参照图5所示。根据实验证明,该方法不仅适用于我国客运量的预测,还可以运用到交通其他方面的预测上,具有良好的预测结果。

本发明提出的初始序列基于函数变换的优化方案,将幂函数融入到初始序列处理函数中,提供了一种新的初始序列变换函数,与传统的arccosx函数变换相比,本发明是传统方法的进一步拓展,不仅可以提高初始序列的光滑度,相较于传统方法,预测精度也有了很大的提高。

本发明提出的基于穷举法的背景值构造,与传统梯形公式构造背景值相比,本发明是传统方法的进一步拓展,能够提高背景值的搜索范围,相较于传统方法预测精度有了很大的提高。

以上显示和描述了本发明的基本原理、主要特征和优点。本行业的技术人员应该了解,上述实施例不以任何形式限制本发明,凡采用等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1