1、2024年2 月第44卷第1期文章编号:10 0 0-7 2 0 2(2 0 2 4)0 1-0 0 41-0 7宇航计测技术Journal of Astronautic Metrology and MeasurementFeb.2024Vol.44No.1D0I:10.12060/j.issn.1000-7202.2024.01.07基于改进PSO-BP模型的钟差预报研究张颖博1-2,刘音华1.2.*,刘娅1.2(1.中国科学院国家授时中心,西安7 10 6 0 0;2.中国科学院大学,北京10 140 8)摘要:针对BP神经网络训练时陷入局部最优解导致预报钟差不稳定的问题,采用改进粒子群优
2、化神经网络的钟差预报模型。首先改进粒子群优化算法中几个重要参数生成的方法,再将BP神经网络的初始权值和阈值作为粒子的位置,通过改进的粒子群优化算法迭代,寻找网络的最优初始权值和阈值,提高BP神经网络钟差预报的稳定性和准确性。从理论上分析改进后的PSO算法原理,利用改进后的模型预测钟差,经过分析全局最优适应度曲线、粒子群优化前后BP模型多次预报钟差的试验,证明该算法优化的有效性。与ARMA和 GM(1,1)等传统的预报模型相比,基于改进的粒子群优化神经网络模型的钟差预报精度分别提高了8 6.5%和7 9%。关键词:钟差预报;粒子群优化算法;BP神经网络中图分类号:P127.1文献标识码:ARes
3、earch on Clock Difference Prediction Based on ImprovedPSO-BP ModelZHANG Yingbo2,LIU Yinhua-2.,LIU Ya-2(1.National Timing Center,Chinese Academy of Sciences,Xian 710600,China;2.University of Chinese Academy of Sciences,Beijing 101408,China)Abstract:In order to solve the problem that the clock error p
4、rediction caused by falling into the local optimal solutionduring the training process of BP neural networks,the improved particle swarm optimization BP neural network is used for theclock difference forecast model.Firstly,the method of generating several essential parameters in the particle swarmop
5、timization algorithm is improved.Then the initial weights and thresholds of the BP neural network are used as the positionsof the particles.The improved particle swarm optimization algorithm iteratively searches the optimal initial weights andthresholds of the network to improve the clock error pred
6、iction of BP neural networks,stability and accuracy.This paperanalyzes the improvement principle and uses this model to predict clock error,which proves the effectiveness of theoptimization of the algorithm after analyzing the global optimal fitness curve and the experiments of the BP model before a
7、ndafter the particle swarm optimization many times,forecasting the clock difference.Compared with the traditional forecastingmodels such as the ARMA model and CM(1,1)mode,the accuracy of the clock difference forecast based on the improvedparticle swarm optimization neural network model is improved b
8、y 86.5%and 79%,respectively.Keywords:Clock difference forecast;Particle swarm optimization algorithm;BP neural network收稿日期:2 0 2 3-0 9-19;修回日期:2 0 2 4-0 1-2 3作者简介:张颖博(19 9 4-),男,在读博士研究生,主要研究方向:时间频率测量技术。通讯作者:刘音华(19 8 1-),女,研究员,博士,主要研究方向:高精度时间频率测量、卫星导航、现代授时等技术。420 引 言精确的钟差预报可以运用在实时动态精密单点定位、卫星自主导航以及接收机
9、自主完好性检测等方面。在时间尺度的计算,为时间保持提供实时驾驭参考也很重要2 。此外,钟差预报在时间测量、时间比对等方面可以与实测的钟差数据形成对照,度量测量的钟差精确性等领域都具有十分重要的意义3比较成熟的钟差预报模型有多项式QP模型、灰色CM(1,1)模型、时间序列模型:典型的有ARMA模型、神经网络模型等4。QP模型形式简单,但是容易受到噪声和钟差中的周期项影响,精度难以进一步提升5。GM(1,1)模型的灰微分方程与拟合的微分方程难以完全一致,影响模型的预报精度6 。ARMA模型的计算方法比较繁琐,对非平稳序列预报精度低7 。传统的神经网络由于结构简单、具有较强的非线性映射能力,在非线性
10、拟合,预测数据等方面应用十分广泛8 钟差信号存在着频率源的不稳定性和多种噪声,钟差由趋势项(频率偏差产生)和非平稳项(各类噪声产生)组成9 。而BP模型则是利用非线性基函数实现从输人到输出的非线性映射,可以通过训练来接近任何非线性函数10 。网络沿着误差减小最快方向通过反向计算对权值和阈值进行调整,随着训练的进行,最终的误差会逐渐减小。但是采用BP模型预报钟差过程中,初始权值和阈值为随机值,经过训练可能陷入局部极值,即局部最优解,错失全局极值点,造成网络训练结果具有偶然性,导致钟差预报结果有较大的不稳定性。针对这一问题,利用粒子群优化(PSO)BP神经网络的算法来提高钟差预报的稳定性和精确性。
11、然而标准的粒子群算法也有陷人局部极值、后期收敛慢的问题。因此需要改进粒子群优化算法中重要参数的生成方法,然后进行迭代计算BP神经网络最优的初始权值和阈值。经过试验分析,改进后的PSO-BP算法可以进一步提高钟差预报精度。1改进的粒子群优化算法对粒子群优化算法中的三个重要参数的生成方法进行改进。从原本固定不变的值,优化为随着宇航计测技术迭代不断更新的值。1.1粒子群优化算法粒子群优化算法中的粒子通过群内相互学习、信息传递以及个体积累自身寻优的经验,聚成一个群体,并且朝着目标一最优位置前进,粒子通过个体最优和群体最优两个位置向量更新自身的位置12.13。用适应度函数来度量每次迭代运算时粒子得到的最
12、优位置。求解方法如下:假设群体有s个粒子,每个粒子是D维向量,其中第i个粒子(i=1,2,s)的位置向量记为X,=(x i,z,,x i p),粒子i每次迭代的最优位置为P,=(Pa,Pa,,Pi p),所有粒子每次迭代的最优位置为P,=(Pa l,P2,,PD),粒子i的速度为V,=(ui,uiz,Uip)。粒子i的第d维位置更新如式(1)和式(2)所示。(2)式中:k一i-迭代次数;d一粒子i的维数,取值1,2,D;0惯性权值;ci一个体学习因子;,r2随机值;c2群体因子;速度的权重。此外,防止粒子盲目搜索,将va限制在(-mx,Umx);xia限制在(-xmx,xmx)。1.2参数改进
13、的粒子群优化算法越大,粒子速度在相邻两次迭代计算时幅度变化越大,越有利于全局寻优;反之值越小,对于局部寻优更有利14。为了平衡算法中全局寻优和局部寻优的能力,对PSO算法中采用非线性递减生成方法,原理如式(3)所示wh=mx-(0mx-mn)式中:k当前送代次数;;0 max大值,一般取0.9;minK一一总的选代次数。随着运算的进行,非线性递减。开始迭代寻优时,适应度较大,说明距离最优解较远,此时需要较大的值使算法具有较强的面向全局寻找最优解的能力;随着迭代的进行,选较小的值更有利于算法在局部寻找最优解。同时对PSO算法中的学习因子通过非对称线性变化的参数生成方法进行改进。在初始寻优时,把c
14、设置较大、C设置较小来扩大搜索范围。随着迭代的进行,Ci线性递减,C2线性递增,在全局最优2024年a,k+1k(3)惯性权重的最最小值,一般取0.4;第1期位置上逐渐收敛粒子。原理如式(4)和式(5)所示ct=el+(cll-c)finini*(K)ainifinc=c+(C2式中:cc,初始值,取2.5;cl0.5;0c,初始值,取1;cmfin2改进的钟差预报PSO-BP模型BP模型原理参考文献15,不再详细叙述。改进参数生成方法的PSO-BP模型预报钟差过程分为以下几个步骤:1)钟差数据的预处理:首先将钟差数据进行一次差分消除趋势项,通过绝对中位差法(MAD)对异常值进行剔除并修正。对
15、差分数据进行归一化处理,目的是统一数据范围,提高模型训练过程中的稳定性,并且加快模型训练的速度。2)划分包括输人数据和输出数据在内的钟差数据的训练集和测试集:划分L组每组M维的数据作为输人,记作T=(t(1),t(2)t(L);同时有L组每组J维的卫星钟差数据作为输出Y,=(y(1),y(2)y(L)。M 维输入和J维输出对应,将L组数据中的P组数据作为训练集,T组作为测试集。3改进的PSO算法实现步骤如下:确定神经网络结构:设计的BP模型输入层、隐含层、输出层神经元个数M、I J分别为4、9、1;隐含层层数为1。PSO 算法初始化:输人到隐含的权值m,共49个;输人到隐含的阈值bi,共9 个
16、;隐含到输出的权值,共9 1个;隐含到输出的阈值b,共1个。随机初始化55维向量1m,b;,j,b,作为粒子的位置向量X,;同理初始化55维速度向量V;粒子群规模s设置为50;K设置为10 0;适应度为训练后的BP神经网络预测钟差数据的均方误差MSE:N适应度=(n)-(n)Nn.=式中:N预报的历元个数;t(n)实际钟差;(n)一一经过训练后的网络预测的钟差。根据粒子的位置和钟差训练集的输人输出数据,得到适应度值,更新粒子位置P,和Pg。迭代完成时,如果存储的每次迭代的全局最优适应度收基于改进PSO-BP模型的钟差预报研究()(4)()(5)C2ini一-c2终止值,取2.2 5。(6)43
17、.敛,则输出最优适应度的粒子位置将最优的粒子位置向量划分不同层之间的权值和阈值输入到BP神经网络作为初值。4)BP神经网络通过反向修正方法获得最佳的(K)网络权值和阈值。用经过训练的神经网络预测钟-c终止值,取一差数据,具体过程如下:初始化网络的参数:训练次数、学习率和训练目标。对处理好的训练集数据进行训练,隐含层传递函数f选为Sigmoid函数10 ,网络对训练集的第p组数据预测值Y。(p)为Y.(p)=2uflMi=1m=1由网络的实际输出Y。与期望输出Y,得到误差E,当误差E未达到训练目标时,继续进行迭代,达到训练目标时迭代完成。由测试集的输人数据对钟差数据进行预测,对预测数据反归一化、
18、反差分得到预测的原始钟差,通过测试集的期望钟差计算均方根误差RMSE。模型预报钟差流程如图1所示。3改进的PSO-BP模型的钟差预报试验分析采用IGS提供的钟差产品数据进行试验分析,训练集数据时段最好选取整数倍的BDS运行周期。选取时间为2 0 2 3年2 月8 日0 时至9 日2 4时的数据,采样间隔为5min,共有57 6 个历元的钟差数据点。前2 8 8 个历元的钟差数据作为训练集,后2 8 8个历元的钟差数据作为测试集。3.1参数改进前后PSO算法对比试验改进的PSO算法中的值以非线性递减的方法生成,C和c值则以非对称线性变化的方式生成。与取值为0.9、c和c取值为1.49 445的固
19、定值的标准PSO算法作对比。把每一次PSO算法迭代后的全局最优适应度值存储在数组中,通过得到的适应度最小值及相应的代次数衡量改进算法的有效性。选取PRN24、PRN30、PR N35和PRN38四颗卫星,用前2 4 h钟差作为训练集数据输入到PSO算法中进行迭代寻找最优适应度值。PSO算法对四颗卫星钟差迭代过程中全局最优适应度值变化曲线如图2 所示。(0mt(p)+b.)+b,(7).44宇航计测技术2024年初始化网络(训练次数、开始参数、粒子速度位置初始化计算初始适应度学习率和训练目标)最优的网络权值和阈值BP神经网络的学习训练训练集的输入和输出数据数据差分、异常值剔除并归一化更新粒子速度
20、和位置重新计算粒子适应度N更新P和P计算全局最优适应度是否达到送代次数输出最优的粒子位置图1改进的PSO-BP模型钟差预报流程图Fig.1 Improved clock difference prediction flow chart of PSO-BP model通过实际输出和N期望输出计算误差划分输入层到隐含层、隐含层到输出层的权值和阅值是否满足训练目标Y根据训练的模型预测数据预测数据反归一化、反差分通过RMSE计算误差结束测试集输人数据测试集输出数据0.01950.0190.024优化后Su/一优化前优化后一优化前0.0230.0185500.021 880.0222040选代次数(a)
21、PRN24对比图6080优化后一优化前10000.0032040送代次数(b)PRN30对比图6080-优化后优化前1000.021 60.002020Fig.2Global optimal fitness changes before and after PSO parameter optimization40送代次数(c)PRN35对比图图2 PSO参数优化前后全局最优适应度值变化608010002040送代次数(d)PRN38对比图6080100第1期从图2 中可以大致看出,PSO算法优化前,虽然迭代前期收敛较快,但在最终得到的全局最优适应度并不是最小值,也就是陷人局部的最优解。参数改进
22、后的PSO算法得到最终的适应度值较改进前变小,搜索精度更高,后期搜索收敛速度加快。参数优化前后对四颗卫星钟差预报过程中最终迭代得到的全局最优适应度值的统计表如表1所示。表1全局最优适应度对比统计表Tab.1Global optimal fitness comparison table优化前卫星全局最优选代全局最优选代适应度/ns?次数适应度/ns?PRN240.018 67PRN300.02238PRN350.021 61PRN380.002 30从表1中可以看出,经过参数优化后的PSO算法,得到全局最优适应度值的迭代次数较优化前减少较多。并且适应度更小,粒子位置更佳。所以对PSO算法中的参数
23、生成方法改进后,在搜索极值时的速度和精度有所改善。3.2改进的PSO-BP模型和BP模型钟差预报对比试验通过PRN24、PR N2 6、PR N35、PR N38 四颗卫星钟差预报结果对比BP模型和改进的PSO-BP模型的钟差预报性能。两种模型采用相同结构的神经网络,不同的是初始权值和阅值:改进的PSO-BP模型使用送代寻优的结果,而BP模型采用随机数。用前2 4h共2 8 8 个历元数据作为训练集进行建模,预报后2 4h的卫星钟差,分别进行10 次独立的预报,用RMSE衡量预报精度。BP和PSO-BP预报结果如图3所示。10 次预报结果的RMSE值的统计结果:均值MEAN和标准差STD如表2
24、 所示。表 2 10 次预报 RMSE统计表Tab.210 times forecast RMSE tablePRN24PRN26模型MEANSTDMEANSTDMEANSTDMEANSTDPSO-BP0.530.060.410.080.310.090.340.04BP1.070.310.730.300.550.290.500.18基于改进PSO-BP模型的钟差预报研究优化后次数890.018 56670.022.00210.021.56800.001 99PRN35.45.由图3可以看出,BP模型在针对同一组数据进行多次试验后,由于初始权值和值为随机值,因此很容易陷入局部最优,导致网络预测数
25、据的不稳定,造成训练后的网络不可重现。而经过改进的PSO-BP模型,在预测钟差数据时采用寻优后的初始权值和阈值,尽管预测钟差结果也有差异,但是波动更小、更稳定。由表2 计算可得,对于PRN24卫星,10 组试验PSO-BP模型预报数据的精度较BP模型提高了50.4%;稳定性提高了8 0.6%。PRN26卫星预报精度提高了43.8%;稳定性提高了7 3.3%。PRN35卫星预报精度提高了43.6%;稳定性提高了69%。PR N38 卫星预报精度提高了32%;稳定性提高了7 7.8%。392101411单位:nsPRN38-o-BP-PSO-BP1.50.51.2卜10.80.60.41.510.
26、5001.00.80.60.40.2图3两种模型十次钟差预报的RMSE值对比图Fig.3Comparison of RMSE for the 10 times clockdifference forecast of the two models22224(a)PRN24对比图46次数(b)PRN26对比图46次数(c)PR N35对比图46次数(d)PRN38对比图6次数8-o-BP-PSO-BP810-o-BP-PSO-BP1810-o-BP-PSO-BP81010463.3改进的PSO-BP模型和三种传统模型钟差预报对比试验为了进一步验证参数改进的PSO-BP模型钟差预报的精度,对12 颗
27、BDS钟差进行预报并与三种传统的钟差预报模型:ARMA、Q P和GM(1,1)进行对比分析。这里仅给出改进的PSO-BP模型与三种传统模型对PRN26、PR N35、PR N38、PR N39 四颗卫星在2 8 8 个历元的预报结果,预报对比如图4所示。10-PSOBPARMAsu/美善50-502Su/美0-2020su/200.20-0.2-0.4-0.6-0.8E0Fig.4Comparison of prediction errors of four models宇航计测技术由图4可以看出,改进的PSO-BP模型钟差预报误差在0 附近波动,精度更高,波动更小。随着预报历元的增加虽然四种
28、模型会出现预报效果变差的情况,但是改进的PSO-BP模型钟差预报误差变化要小,预报的稳定度更好。预报误差的统计结果RMSE和STD如表3所示。表3钟差预报误差统计表Tab.3Clock difference forecast error tablePRN26PRN35模型QP-GM(1,1)4080120 160220240280历元/(5min/个)(a)PR N2 6 四种模型PSOBPARMAQP-GM(1,1)4080120160220240280历元/(5min/个)(b)PR N35四种模型-PSOBPARMA-QP-GM(1,1)4080120160220240280历元/(5m
29、in/个)(c)PR N38 四种模型-PSOBP-+ARMA-QP-GM(1,1)4080历元/(5min/个)(d)PRN39四种模型图4四种模型预报误差对比图2024年单位:nsPRN38PRN39RMSESTDRMSESTDRMSESTDRMSESTDPSO-BP0.340.210.400.200.320.150.170.08ARMA9.671.141.200.264.460.280.570.161QP0.600.32 1.460.651.551.030.300.20GM3.811.161.700.271.460.210.510.17(1,1)由表3可得,PRN26号卫星:改进的PSO
30、-BP模型相对于ARMA、Q P、G M(1,1)模型的预报精度分别提高了9 6.5%、43.3%9 1.1%;预报的稳定性分别提高了8 1.6%34.4%、8 1.9%。PRN35卫星:改进的PSO-BP相对其他三种模型预报精度分别提高了6 6.7%、7 2.6%、7 6.5%;预报的稳定性分别提高了2 3.1%、6 9.2%、2 5.9%。PRN38卫星:改进的PSO-BP相对其他三种模型预报精度分别提高了92.8%、7 9.4%、7 8.1%;预报的稳定性分别提高了46.4%85.4%、2 8.6%。PR N39 卫星:改进的PSO-BP相对其他三种模型预报精度分别提高了7 0.2%、4
31、3.3%66.7%;预报的稳定性分别提高了50%、60%52.9%。因此改进的PS0-BP模型无论是预报精度还是预报的稳定性都较传统的三种模型有很大的提升。四种模型对12 颗卫星预报2 8 8 个历元的钟差数据的RMSE值和STD值统计结果如图5所示。从图5和图6 的12 颗卫星的钟差预测结果可以看出:大部分卫星,经过改进的PSO-BP模型比传统模型在预测精度和稳定性方面都有所提高。总120160220240 280体的预报精度相对于ARMA模型提升了8 6.5%;稳定性提升了6 1.6%。相对于QP模型精度提升了26.8%;稳定性提升了6.6%。相对于GM(1,1)模型精度提升了7 9%;稳
32、定性提升了56.1%。第1期基于改进PSO-BP模型的钟差预报研究 4715口ARMA口PSO-BP口QPGM(1,1)105222526283032333435363839PRN图512颗BDS钟差预报RMSE值对比图Fig.5Comparison of RMSE for 12 BDS clockdifferenceforecasts3FARMAPSO-BP口QPCM(1,1)2F兰u/QLS0222526283032333435363839PRN图6 12 颗BDS钟差预报STD值对比图Fig.6Comparison of STD for 12 BDS clock differencefo
33、recasts4结束语为了解决传统BP模型在训练过程中陷入局部最优解而导致预测钟差不稳定的问题,采用粒子群优化神经网络模型。为了进一步提升粒子群算法计算速度和搜索精度,改进了粒子群算法几个重要参数的生成方法。通过和不同模型的对比验证了该模型的有效性,说明改进的PSO-BP模型在钟差预报方面有较高的应用价值。参考文献1李玉缝,施韶华.基于GM(1,1)与BP神经网络的卫星钟差预报J.电子设计工程,2 0 2 0,2 8(0 9):7-11.2 WHIBBERLEY P B,DAVIS J A,SHEMAR S L.Local rep-resentations of UTC in national
34、 laboratories J.Metrolo-gia,2011,48(4):S154-S164.3李会锦.无线时间比对系统基带电路研制与系统性能测试口D.中国科学院大学(中国科学院国家授时中心),2 0 2 1.4陈希鸣,黄张裕,秦洁,等.粒子群算法优化的神经网络短期钟差预报J.测绘科学,2 0 19,44(9):7-12.5朱陵凤,李超,韩春好,等.多项式模型在导航卫星钟差预报中的应用研究J.无线电工程,2 0 17,47(7)51-54.6谭小容,许江宁,何泓洋,等.GM(1,1)模型初始条件优化及其在GNSS钟差预报中的应用J.大地测量与地球动力学,2 0 2 2,42(9):9 19
35、-9 2 4.7 刘聪,刘海颖,李俊义.基于改进 ARMA模型的电离层球谐模型系数预报J.测绘地理信息,2 0 17,42(6:2 5-2 8.8朱陵凤,李超,李晓杰,等.神经网络在导航卫星钟差预报中的应用J.宇航计测技术,2 0 16,36(3):41-45.9 徐超,李博,刘军良,等.一种改进的高精度频率源钟差仿真方法J.宇航学报,2 0 17,38(9):9 9 8-10 0 4.10 杨娟丽,徐梅,王福林,等.基于BP神经网络的时间序.HL列预测问题研究J.数学的实践与认识,2 0 13,43(4):158-164.11华勇,王双园,白国振,等.基于惯性权值非线性递减的改进粒子群算法J
36、:重庆工商大学学报(自然科学版),2 0 2 1,38(2):1-9.12 WANG S,LIU G,GAO M,et al.Heterogeneous compre-hensive learning and dynamic multi-swarm particle swarmoptimizer with two mutation operators J.Information Sci-ences,2020,540(4):175-201.13 WANG J,JU C W,GAO Y,et,al.A PSO based energy ef-ficient coverage control algorithm for wireless sensor net-work J.Computers,materials and continua,2018,56(3):433-446.14马国庆,李瑞峰,刘丽.学习因子和时间因子随权重调整的粒子群算法J.计算机应用研究,2 0 14,31(11):3291-3294.15孙鹏超,魏东平,孙碧娟.遗传算法优化的BP神经网络卫星钟差预报J.天文学报,2 0 2 0,6 1(6):9 2-10 4.