1.一种基于Fourier级数模型的时序数据预测方法,其特征在于,包括如下步骤:
步骤1,对遥测采样数据进行预处理,剔除粗大误差、剔野;
步骤2,建立Fourier级数模型;
其中,Fourier级数模型为:
y=Φ(x,t)=a0+a1cos(ωt)+b1sin(ωt)+a2cos(2ωt)+b2sin(2ωt)+a3cos(3ωt)+b3sin(3ωt)
+a4cos(4ωt)+b4sin(4ωt)+…+aKcos(Kωt)+bKsin(Kωt)
其中,x=(a0,a1,b1,a2,b2,a3,b3,a4,b4,…,aK,bK,ω),为待求模型参数;ω为基频,(a0,a1,b1,a2,b2,a3,b3,a4,b4,…,aK,bK)为模型系数;t为采样时间;y为采样时间对应的遥测采样数据;K为Fourier级数模型的阶数;
步骤3,求取Fourier级数模型的参数x;
步骤3.1,利用FFT变换求取步骤1预处理后的采样数据的最大频率ωpeak:
FY=FFT(Y)
其中,Y=[y1,y2,…,ym]T,y1,y2,…,ym为采样时刻t1,t2,…,tm对应的遥测数据采样值;max_loc为FFT变换序列FY前一半的最大值索引号;
步骤3.2,令ω=ωpeak/k,k=1,2,…,K;针对K个ω,均进行如下处理:
(1)构造矩阵A:
(2)对矩阵A进行QR分解:
[Q,R,E]=qr(A,0)
(3)求取矩阵R的秩rand(R),令p=rand(R),取矩阵Q的前p列,即
Q′=Q(:,1:p)
(4)求取拟合序列Yfit=Q′×(Q′T×Y);
(5)计算||Y-Yfit||;
步骤3.3,针对步骤3.2获得的K个||Y-Yfit||值,选取其中最小值||Y-Yfit||min对应的频率为最佳基频ωbset;
步骤3.4,根据步骤3.3获得的最佳基频ωbset,利用最小二乘求取其他模型系数:[a0 a1b1 … a4 b4]T=(ATA)-1ATY,其中,
从而获得确定的Fourier级数模型;
步骤4,利用步骤3确定的Fourier级数模型对遥测数据进行预测。
2.如权利要求1所述的基于Fourier级数模型的时序数据预测方法,其特征在于,Fourier级数模型的阶数为4。