石旭东 姜鸿晔
(中国民航大学电子信息与自动化学院 天津 300300)
航空通信是利用电信设备在航空各个部门之间进行联系,用于传送飞机飞行动态、空中交通管制指示、气象情报和航空运输业务等信息。其中,高频通信是短波借助电离层反射实现远程传播的一种无线通信方式,但是电离层的状态极不稳定,容易受到气候和太阳黑子数的影响。如果飞机使用频率高于或低于电离层临界频率,短波通信质量将受到影响,甚至引起飞机通信中断。为了确定最佳高频通信频率,在飞机高频通信频率选择前,必须对电离层当前状态进行探测或者对电离层变化趋势进行预测。因此,本文将电离层状态预测作为重点研究内容,利用电离层参数中f0F2的变化趋势作为反映电离层状态的关键,对电离层状态进行短期预测。
传统的频率预测方法如高频频率中国区域精细化预测法[1]、国际无线电咨询委员会推荐法[2],还有基于国际电离层参考模型(IRI-2012)方法[3],均根据固定推导公式进行计算。然而这些计算都基于理想条件,所需要的输入参数较多,且对不确定的影响因素不能全面地估计。
由于电离层是非线性系统,人工神经网络在电离层参数预测中得到广泛的应用,国内外研究人员将神经网络的算法引入高频通信频率预测方面。如典型的反向传播神经网络预测电离层的方法[4-5],利用BP神经网络提前预测,但由于其采用的BP神经网络为结构比较浅层,容易发生泛化能力不够和过度拟合的情况,从而影响了网络的预测性能。文献[6]是基于模糊小波神经网络的频率预测方法。该方法首先利用混沌理论预处理数据,从而确定小波神经网络模型,使得预测精度比BP神经网络预测有所提高。但是用于预测的神经网络参数时随机初始化方式选取,没有提前优化,容易引起神经网络网络收敛到局部最小点。高频通信频率预测精度还有提升空间,故本文提出一种基于思维进化的Elman神经网络结合混沌理论的高频通信频率预测算法。与文献[7]提出的MEA-WNN算法相比,Elman神经网络中的承接层对数据具有更好的临时记忆功能,Elman神经网络在训练新数据时继承旧数据的特征,因此预测精度得到进一步提高。
有关时间序列混沌特性方面,最早由国外学者Packard提出重构相空间理论[8-9]。在非线性系统关键变量的变化过程中,涵盖了所有非线性系统其他变量长时间变化的信息。所以,我们可通过非线性系统中关键的单一变量历史时间序列来研究系统的混沌特性。系统的混沌性质方面可以通过关联维、Kolmogorov熵、Lyapunov指数等体现。
结合电离层参数特点和实际情况,本文采用相空间重构法对电离层历史数据预先处理。相空间重构就是把具有混沌特性的数据重构成非线性系统,关于时间序列(x1,x2,…,xn),n是序列长度,根据Takens提出的嵌入理论,可以将该序列重构成m维相空间分布。
输入时间序列:
(1)
输出预测序列:
(2)
式中:τ为时间延迟;m为嵌入维数;h为预测时间长度。
(3)
式中:M=N-(m-1)t;X(i)为对应的频率大小;θ(·)为Heaviside函数。Heaviside函数表示为:
(4)
分别计算子序列的统计量:
[Cl(m,N/t,r,t]m)}
(5)
同时,子序列的差量为:
ΔS(m,N,t)=max[S(m,N,ri,t)]-
min[S(m,N,ri,t)]
(6)
参考统计原理,取m=2,3,4,5。r=iσ/2,i=1,2,3,4,σ是时间序列的均方差。
(7)
(8)
(9)
τm=τ(m-1)
(10)
根据式(10),先计算嵌入维数m,并根据求得的时间延迟τ和嵌入维数m建立电离层参数相空间,将嵌入维数m作为Elman神经网络结构的输入神经元个数。
为了检验电离层参数序列是否具有混沌特性,本文通过小数据量方法对其进行检验[10]。小数据量方法是一种计算混沌时间序列的最大Lyapunov指数的方法。在混沌研究的实际应用中,未必需要计算出数据的所有Lyapunov指数谱,只要算出最大Lyapunov指数。一个时间序列是否为混沌系统,只要判断最大Lyapunov指数是否大于0,而时间序列的预测问题通常是基于最大Lyapunov指数进行的。最大Lyapunov指数为:
(11)
式中:di为欧式距离。当λ值大于0时,时间序列具有混沌特性,λ值越大,非线性系统的混沌特性越强。
为了保证飞机短波通信链路的通信质量,要对电离层参数进行实时预测。目前电离层参数预测方法大致有数学统计方法和神经网络方法。数学统计法在预测线性系统时表现较好,但运算不灵活,对非线性系统预测乏力。神经网络不依据研究人员的实践经验,是通过训练数据输入得到输出数据,从而构造预测神经网络,可以较好地处理时间序列数据的非线性关系。
Elman神经网络结构中的承接层使得其比BP神经网络具有临时记忆特性。因为电离层参数随时间变化的特点,本文采用Elman神经网络作基础模型,其结构如图1所示。
图1 Elman神经网络结构
表达式如下:
(12)
式中:x(k-1)为输入;S(k)为隐含层输出;y(k)为输出;wi为相邻层之间的权值;bi隐含层和输出层的阈值。
对于选取隐层节点数的选择,当下没有精确的理论方法。通过多次实验验证可知:如果隐含层节点数在输入层和输出层节点数之间时,神经网络收敛较快;隐层节点数过少时,学习过程收敛不足;如果隐含层节点数过多时,容易收敛到整体最小点,导致容易过度拟合。在实际应用中,往往参考经验公式[10]:
(13)
式中:L为隐含层神经元数;x为输入神经元数;y为输出神经元数;q取大于1且小于10的整数[11]。在设计具体神经网络模型时,还需要进行试凑。
Elman神经网络中的误差的反向传播易导致局部极小解,下节将采用优化算法提高Elman神经网络预测性能。
遗传算法自身存在早熟、稳定性差、收敛速度慢等缺陷,难以应对维数较高的问题。针对遗传算法的不足,国内学者提出思维进化算法(Mind EvoIutionary Algorithm,MEA)。与遗传算法相比,思维进化算法模拟人类的思维进化过程,可以记忆多代进化信息[12-14]。该算法具有更高的稳定性,且在新空间探索解的能力更强,效率更高。
思维进化算法的趋同和异化取代了交叉和变异。在子群体内,通过竞争获得适应度值较高的优胜个体的过程叫作趋同。在全部解空间中,临时子群体的适应度值与优胜子群体的适应度值对比,若高于优胜子群体适应度值,则替代该优胜子群体,否则将该临时子群体遗弃的过程叫做异化。思维进化算法基本思路如下:
Step1初始种群数量设置,设置种群数量Psize,优胜子群数量Bsize,临时子群体数量Tsize,子群体数量SG,其中SG=Psize/(Bsize+Tsize)。
Step2先随机产生初始种群,将训练数据的均方差的倒数作为子种群的得分函数,并依据得分高低分为优胜子群体和临时子群体。
Step3优胜子群体和临时子群体先进行趋同过程,再进行异化过程。
Step4解码全局最佳个体,并判断个体是否满足最佳输出条件,若满足输出得到的全局最佳个体,否则返回Step 3。
Step5将全局最佳个体作为Elman神经网络模型的起始阈值和权值,初始化Elman神经网络。
为了验证遗传算法和思维进化算法的在f0F2趋势预测中的优化效果,下文分别利用MEA-Elman模型和GA-Elman模型实现预测,并对比两者优化性能。
本文使用平均绝对误差(MAE)、均方误差(MSE)和方差根误差(RMSE)误差分析法对电离层临界频率f0F2进行误差分析。
(14)
(15)
(16)
式中:Ti为真实数据;Yi为预测数据;n为预测数据个数。
以国家地球系统科学数据共享服务平台网站提供的北京观测站f0F2数据为样本,利用Chaos-MEA-Elman算法对f0F2预测,流程如图2所示。
图2 优化算法流程图
选取f0F2数据样本中连续的时间,每小时1条数据,一共采用2 000小时数据作为原始数据。其中前1 900条数据作为训练数据,最后100条数据作为测试数据。取预测时间长度h为1,对f0F2进行一步预测。
根据小数据量法计算f0F2序列的最大Lyapunov指数为0.055 1大于0,所以该时间序列具有混沌特性。利用上述相空间重构法重构f0F2时间序列。
由图3和图4可知:该f0F2数据样本的时间延迟τ为2,因此取时间间隔为1小时。延迟窗宽τm为10,代入式(10)求得嵌入维数m为6,因此取Elman神经网络输入神经元个数为6,对f0F2进行一步预测。
图的值
图4 Scor(t)的值
神经网络输入数据和输出数据关系如下:
xt=f(xt-1,xt-3,xt-5,xt-7,xt-9,xt-11)
(17)
将当前时刻的预测值xt作为神经网络的输出,xt-1、xt-3、xt-5、xt-7、xt-9、xt-11作为神经网络的输入。
根据隐含层神经元个数经验公式和试凑法,为了选择最佳的隐含层神经元个数,计算不同隐含层神经元个数下的均方误差(MSE),取10次实验的平均值,统计结果如表1所示。
表1 不同隐含层节点数预测误差
从表1可以看出,隐含层神经元个数增加,导致神经网络复杂化,反而预测精度降低,因此最佳隐含层神经元个数为7。
综上分析,根据式(17)得到的输入输出数据关系,设置BP和小波神经网络结构为:6个输入节点,7个隐含层节点,1个输出层节点。Elman神经网络结构为:6个输入节点,7个隐含层节点,7个承接层节点,1个输出层节点。
为了增加实验结果的稳定,分别对每种预测模型进行10次实验,预测结果取10次实验的平均值,结果对比如图5所示。
图5 预测结果对比
用实际值减去预测值,进一步分析误差,如图6所示。
图6 预测误差对比
由图5和图6可知,Elman预测误差最小。Elman网络的中承接层使其比BP网络和小波网络有更好的时变预测能力,预测值更加准确。所以下文采用Elman神经网络作为基础模型,进行优化和分析。
设置思维进化模型为200个群体,5个优势种群和5个临时种群。根据上述Elman网络结构得每个群体的个数为:6×7+7×7+7×1+7+1=148个。将训练数据的均方差的倒数作为子种群的适应度函数。
由图7可知,在f0F2值较低时,MEA-Elman模型和GA-Elman模型均可以很好地预测变化趋势,其中MEA-Elman模型的预测精度略高于GA-Elman模型,但是,当f0F2值较高时,两中模型的预测能力明显不足。因此,加入混沌算法进行优化,结果如图8所示。
图7 MEA与GA优化算法对比
图8 Chaos-MEA-Elman算法预测结果
由图8可以看出,在加入混沌算法后,Chaos-MEA-Elman预测模型对f0F2的预测精度得到进一步提升,无论f0F2是上升还是下降趋势,本文提出的预测模型均能取得十分准确的预测结果。预测误差的10次平均值统计结果如表2所示。
表2 不同优化算法预测误差
本文利用历史实测数据对全天不同时刻的f0F2值进行预测,并分析不同的预测模型的的性能,结果表明Chaos-MEA-Elman模型相比于传统网络模型,其对各个时刻的f0F2值预测均有良好的效果,尤其是凌晨数值较高时仍然可以更加精准地预测;在电离层f0F2预测中,其精度明显高于未优化的Elman神经网络,为飞机高频通信中通信频率选择提供更加精确的计算方法。
利用北京观测站提供的f0F2观测数据,对其进行混沌特性分析及预测。1) 通过计算Lyapunov指数对f0F2进行混沌检验,得到最大Lyapunov指数大于0,验证了电离层的混沌特性。2) 提出了混沌算法和思维进化算法共同优化Elman神经网络。3) 数值仿真结果表明,相比Elman和MEA-Elman神经网络算法,本文提出的Chaos-MEA-Elman模型的频率预测值更接近真实值,对f0F2预测精度有很大的提升。所以,Chaos-MEA-Elman模型对电离层参数变化趋势的预测是可行的,为飞机高频通信频率选择提供了新的思路。