一种基于量子引力算法的时间序列预测方法

文档序号:9564767阅读:1441来源:国知局
一种基于量子引力算法的时间序列预测方法
【技术领域】
[0001] 本发明属于信号处理及信号预测等领域,更为具体地讲,涉及一种基于量子引力 算法的时间序列预测方法。
【背景技术】
[0002] 非线性时间序列预测方法自20世纪80年代中期开始发展,近年来得到了更深 入的研究和更广泛的应用。其中,Volterra级数模型分析方法因其输出是其滤波器核的 线性函数,可用现有的线性工具来分析其滤波性能,已成为广泛使用的预测模型之一。 Volterra级数是一种泛函数,大多数非线性动态系统都可以用Volterra级数逼近到任 意准确的程度。换句话说,一大类的非线性动态系统都有它固有的Volterra核函数。 Volterra核函数可以完全表征非线性系统的性质。因此,只要知道核就足以确定系统对任 何输入激励的响应。但是,建立非线性系统Volterra级数模型,不是一件容易的事情,其 高阶的核函数估计是其面临的一个最大的困难,这在很大程度上制约了 Volterra泛函级 数模型的有效应用。而现有的Volterra核函数辨识主要采用传统的最小二乘法,该法采用 梯度信息进行搜索,易陷入局部最小,得不到满意结果,尤其在干扰严重情况下,辨识的稳 定性并不理想。其结果就导致了建模的不精确,影响模型的预测性能,尤其是当训练集中 包含的与预测轨道相关的信息过少或者夹杂许多无关的信息时极易影响训练效果,造成模 型训练不充分或过拟合,导致多步预测性能不佳。
[0003] 而量子引力算法(Quantum Inspired Gravitational Search Algorithm,简称 QGSA)作为一种新型的智能优化算法,其从量子力学角度提出的改进的万有引力搜索算法 (Gravitational Search Algorithm,简称GSA)模型,将粒子定义在一个量子空间内,该量 子空间由概率密度函数决定(处于量子束缚态的粒子能够以一定的概率出现在任何空间 点),认为粒子具有量子的行为,能在整个可行解空间中进行搜索,对需求解的具体问题本 身没有特别的要求,因而全局搜索能力较强,克服了上述Volterra核函数辨识方法的一 些不足,另外,还具有容易实现、收敛快且参数少等优点。因此,研究基于量子引力算法的 Volterra核函数辨识及其时间序列预测方法具有重要的理论价值和现实意义。

【发明内容】

[0004] 本发明的目的在于克服现有技术的不足,提供一种基于量子引力算法的时间序列 预测方法,将量子引力算法引入非线性系统的Volterra核函数辨识中,以提高电子产品退 化状态预测的准确度。
[0005] 为实现上述发明目的,本发明基于量子引力算法的时间序列预测方法,其特征在 于,包括以下步骤:
[0006] (1)、数据预处理
[0007] (I. 1)、设预选的数据集DS = Ix (I),X (2),…,X⑶},其中D为数据个数;
[0008] (1. 2)、根据微分熵率的方法确定数据集DS的最佳嵌入维数d和延迟时间τ ;
[0009] (I. 3)、利用Matlab中的函数windowize对数据集DS进行分帧重构,并将各帧数 据分别映射到d维特征空间,且以Volterra级数的方式p(p彡1)阶截断,从而得到NJN。 = D-dX τ)个数据帧{(Xt,Yt)} (t = 1,2,一,%),并作为预测模型的输入和目标输出数据, 其中:输入数据为 Xt= {1,X⑴,X(t+ …,X(t+(d-l) X τ ),X 2(t), x(t) Xx(t+ τ ),… ,x2(t+(d_l) X τ ),···}目标输出数据为 Yt= x(t+dX τ ) (t = 1,2,…,N。);
[0010] (2)、初始粒子的局部最佳位置
[0011] 设有Ns个粒子,粒子位置用M维向量W1表示,粒子群位置可用矩阵Mv sW表示,i =1,2,…,Ns;随机初始化N s个粒子的初始位置W i,,并令各粒子局部最佳位置为Lbest1 = W1;
[0012] (3)、获取Ns个粒子构成的群体的初始全局最佳位置
[0013] 第i (i = 1,2,…,Ns)个粒子在寻优过程中的适应值函数为:
[0015] 选取适应值最小的粒子的位置作为Ns个粒子构成的群体的初始全局最佳位置 Fbest ;
[0016] (4)、根据万有引力算法计算出每一维空间中粒子i (i = 1,2,…,Ns)的加速度 ,因此M维空间中全体粒子的加速度可以用NsXM维矩阵a表示;
[0017] (5)、更新粒子的位置和适应值:
[0023] 其中,δ (K),u(K)为0至1之间的随机数,a。,%分别为0至1之间的Ns维和NsXM 维随机向量,a为粒子的加速度,fit (Fbest)为全局最佳位置所对应的适应值,即最优适应 值,K为当前迭代步数,MXITER为最大迭代步数;
[0024] 随着粒子位置W(K)的更新,从而利用公式⑴可以计算得到粒子i(i = 1,2,···,Ns)的新适应值 fit (W1 (K));
[0025] (6)、更新每个粒子的局部最佳位置,如果每个粒子Tit(WiOO) < Ht(Lbesti),则 Lbesti= W ; (K),否则 LbestJ:^持不变(i = 1,2,…,N s);
[0026] 更新全局最佳位置,
[0027] (7)、迭代操作:判断迭代步数是否达到最大迭代步数MXITER或者最优适应值 fit (Fbest)是否达到稳定;如果是,则终止迭代,得到一组最优的M维核向量#,执行步骤 (8);否则,返回到步骤⑷继续执行;
[0028] (8)、计算预测值:当预测第D+1个数据,即预测数据x(D+l)时,根据步骤(1)可知 此时预测模型的输入数据帧为
将步骤(7)中 的核向量#代入,从而得到
时刻,预测模型的一步预测值:
[0030] 进一步的,本发明还提供了计算每一维空间中粒子的加速度的方法为:
[0031 ] 第K次迭代时,每个粒子的惯性质量Hi1 (K):
[0034] 其中,C1 (K)为计算粒子惯性质量的中间变量,Lfit1 (W) ]κ是第K次迭代时粒子i 的适应值,best (K)和worst (K)代表最优适应度和最差适应度;
[0035] 对于Volterra核辨识而言,目的为寻求一组M维核向量.并使
最小,所 以在搜索函数最小值时,best (K)和worst (K)分别为:
[0037] 根据万有引力公式:F = Gmini2/R2,得到第K次迭代时粒子i和粒子j之间的引力 为:
[0039] 其中,W1 (K),Wj (K)是M维空间中粒子i和粒子j的位置,ε是一个很小的常量, Rlj(K)是第K次迭代时,粒子i和粒子j的欧式距离,即Rlj(K) = I IW1 (K),Wj(K) I 12;G(K) 是万有引力系数,可表示为:
K为当前迭代步数, MAXITER为最大迭代步数;
[0040] 所以得到每维空间中粒子i的加速度?
[0042] 其中,彡j彡Ns,j辛i)代表第j个随机数。
[0043] 更进一步的,本发明还描述了计算预测值时,还可以一次预测多步数据,即先预测 时亥以的数据,再以时刻f的预测数据为基础,预测时刻1+1的数据,并依次类推,从而得到 q(q彡1)步超前预测值为:
[0045] 本发明的发明目的是这样实现的:
[0046] 本发明一种基于量子引力算法的时间序列预测方法,通过采用Volterra级数 展开式来构造时间序列预测模型。首先,在引用相空间分帧重构技术的基础上,构建以 Volterra级数P阶截断的输入信号矢量;其次,引入加速度作为某个变量参数到Mohadeseh Soleimanpour等人提出的量子引力算法中,利用此算法有效地训练出预测模型的 Volterra核函数;最后,通过预测点时刻的输入信号矢量与Volterra核函数的线性组合, 从而求得
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1