基于遗传算法的自动气象站气象数据预测

时间:2022-09-27 01:44:42

基于遗传算法的自动气象站气象数据预测

摘要:为了保证自动气象站数据观测质量,提高其可信度,结合遗传算法的优化群体特点,提出了一种基于遗传算法的气象数据分析预测方法。在原始气象数据平整预处理后建立了数据值与时间的多项式,对多项式中的参数个数群体进行二进制编码和随机初始化,采用自适应交叉概率的交叉遗传操作,结合选择以及变异遗传操作产生新的模型组合,依据适应度函数求得最优群体,利用最小二乘法根据样本数据确定的多项式关系得出预测结果。将该方法应用于自动气象站某段时间内的电场强度的预测,结果表明该方法具有较好的预测准确度,同时具有鲁棒性,可以为自动气象站的稳定运行提供技术保障。

关键词:信息处理技术;自动气象站;数据预测;遗传算法

中图分类号:P413 文献标识码:A 文章编号:0439-8114(2013)20-4917-06

Meteorological Data Prediction of Automatic Weather Station Based on Genetic Algorithm

JIANG Chen,XING Hong-yan

(College of Electronic and Information Engineering/Jiangsu Key Laboratory of Meteorological Observation and Information Processing, Nanjing University of Information Science and Technology,Nanjing 210044,China)

Abstract: In order to ensure the accuracy of observation data of automatic weather station and improve its credibility, a meteorological data analysis and forecasting method based on genetic algorithm and combined with the population optimum characteristic of genetic algorithm was proposed. The polynomial between data values and time was established after the smooth pretreatment of time series of raw meteorological data. The number of parameters of polynomial group was encoded and initialized. Cross-genetic manipulation was utilized based on adaptive crossover. A new model portfolio combining the selection with mutation genetic operations was engendered. The optimal group could be calculated based on the fitness function. The forecasting results could be obtained using the least squares method based on the polynomial determined by sample data. The method was applied for predicting the electric field strength in the automatic weather station during a certain period of time. The experimental results showed that this method had good prediction accuracy and robustness, thus could provide technical support for the stable running of automatic weather station.

Key words: information processing technology; automatic weather stations; data prediction; genetic algorithm

现代自动气象站具备数据采集、数据处理、数据存储、数据传输、数据质量控制和运行监控等基本功能[1],这些功能的实现依赖于实时数据的准确获取。由于电磁波和人为干扰源的存在以及自动气象站采集器所处环境改变的不可预见性,造成自动气象站运行过程中接收到的数据不准确,使数据在被利用时准确性有所下降。此外,对采集到的实时数据进行预测和验证可以提高自动气象站运行的稳定性和人工操作的方便性,满足气象数据在被使用时对事先性的要求。当自动气象站运行时验证指定时刻的气象观测数据可以在异常环境出现时及时预警以保证自动气象站的正常运行。同时对某时刻气象数据进行预测可以增加控制系统的功能,为管理者进行决策提供可靠的依据。

目前,数据预测方法和理论发展迅速,为大型的、复杂的和信息丰富的数据集的分析预测提供了强有力的支持条件。国内外各类研究机构和学者针对各种数据预测以及数据验证的具体问题开展了广泛的研究,提出了多种方法,如基于统计学的方法[2],基于神经网络的方法[3]以及基于支持向量机的方法[4]。作为优胜劣汰演化而来的随机优化算法和遗传算法被广泛应用于疾病预防[5,6]、机械制造[7]、电网建设[8]以及道路规划[9]等领域。

考虑到自动气象站对数据预测的具体需求以及气象数据观测值为二维时间序列的特点[10],使用遗传算法对数据集进行分析预测,并将其应用到自动气象站控制系统的数据预测环节中,实现数据检测功能。该方法在实施过程中需要建立时间与数值的函数关系,利用遗传操作结合适应度函数搜索该函数关系中参数个数群体的最优解,以样本气象数据确定的函数关系得到预测时刻的气象数据预测值。

1 自动气象站气象数据预测方法

遗传算法(Genetic Algorithm,GA)最早是由密执安大学的Holland教授(1969年)提出,后经由De Jong(1975年)、Goldberg(1989年)归纳总结出的一种建立在自然选择和群体遗传学机理基础上的自适应启发式全局搜索算法[11]。遗传算法的本质是一个以适应度函数为依据,通过对群体内个体施加遗传操作,实现个体结构重组的迭代过程[12]。

图1是基于遗传算法的气象数据分析预测方法的流程图。首先对原始气象数据进行数据预处理,根据预处理后的数据得出数据和时间的多项式函数关系,同时建立遗传操作的适应度函数。然后对多项式中参数个数群体进行编码和初始化,采用最小二乘法依据样本数据确定初始化后群体的函数关系,结合适应度函数进行遗传操作,当达到指定的遗传代数后筛选出最优化的参数个数群体。最后根据最优化参数个数群体确定的函数关系得到预测时刻点的气象数据预测值。

1.1 气象数据的预处理

自动气象站的气象数据按照时间存储,当时间点确定时,该时刻的气象数据也确定。根据气象数据的时间序列特点对其进行预处理,根据预处理后的数据值得出相应的多项式关系和适应度函数。

本方法的预处理主要完成按比例缩放整合数据的任务[13]。进行气象数据的预测之前,需要从数据库中读出与所求时刻点数据相关联的一些时刻点的数据值作为参考样本,用于预测时刻点的数据预测。当建立气象数据与时间的多项式关系时,由于时间分量在自动气象站中保存形式不利于进行操作,因此要将其进行整合,以整型对称序列表示时间序列:

T[-b,-(b-1),…,0,…,(d-1),d] (1)

式中,T为时间序列,b=d±1,b∈{N}。

时间分量经过处理后,以多项式模型族的形式表示气象数据值和时间的关系:

Y(x)={■aixi} (2)

式中,x为时间序列中的某一时刻点;Y(x)为x时刻的气象数据值;ai为多项式的参数;m为参数个数的上界。

1.2 适应度函数的确定

适应度函数被用来评价解的优劣程度,解决遗传算法过程中的欺骗问题[14]。经过编码的群体具有一般性,此步骤的目的就是给出群体中各个体在具体问题中的好坏程度。对于不同的具体问题适应度函数的定义方式也不相同,一般参照公式以及模拟仿真或者根据日常生活经验来设定。通常认为适应度函数值越大的个体越优。

根据选取的样本气象数据的数量选择适当个数的气象数据观测值作为适应度函数的参数值。参照适应度函数建立的要求,利用目标函数为方差公式建立适应度函数:

W=-■ (3)

式中,W为适应度函数;n为用于作为适应度函数参数的样本气象数据的个数。

1.3 参数个数种群的编码和初始化

群体的编码是遗传算法求解问题的基础,它将实际问题的可行解从其解空间转换到遗传算法所能处理的搜索空间内[15]。编码方案在不断改进,比较成熟的有二进制编码、Delta编码、格雷码编码、实数编码等[16-18]。在不同的应用中选择合适的编码方案对遗传算法的效率和性能意义重大。

基于遗传算法的气象数据分析预测方法采用多项式模型族表征时间分量和气象数据值分量之间的函数关系,其可行解是函数中参数的数量,由于该数量没有特定的限制条件以及相关的从属关系,因此采用二进制编码。根据样本气象数据的数量确定参数个数的范围区间,对区间内的各个种群进行编码,编码完成后随机初始化指定数量的种群进行遗传操作。

1.4 基于自适应交叉概率的遗传操作

遗传操作通过对已知数据集中的种群进行选择、交叉、变异操作,实现群体内基因的重组,达到繁殖更优解的目的[19]。为了使种群保持稳定,变异概率应远小于交叉概率,防止变异概率过大造成随机数据重置。

选择操作从解空间中选出最适合具体问题的一组群体,本方法的遗传操作是针对时间与气象数据多项式的参数个数群体进行的,考虑到之前建立的适应度函数的目标函数本质是求解最小化问题,因此进行选择操作的时候采用锦标赛选择策略[20]。

交叉操作使基因重组,是最重要的遗传操作之一。无论是位数交叉产生子代,还是生成区间[0,1]之间随机交叉算子进行遗传操作,都有收敛速度慢以及局部收敛的缺点。采用基于相关性程度指数[21]的自适应交叉概率的交叉遗传操作[22],依据适应度函数值产生参数个数群体的自适应交叉概率。适应度函数值越大的群体越优,使该群体直接进入下一代的概率更大,于是得出公式:

pc=p■-■,W≥■p■,W

(4)

式中,p■为原始交叉概率;Wmax为每代群体最大适应度值;W为每代群体的平均适应度值。适应度函数值小的群体进入池[21]进行交叉的概率较大,利用群体Q与配对池中其余群体Vi的不同的相关性程度指数计算各组不同的交叉配对概率。配对池中各个群体Vi与随机选取的群体Q的交叉配对概率为:

P(Vi|Q)=■(1+λ■),i=1,2,3,…,L

(5)

式中,P(Vi|Q)为群体Vi与群体Q的交叉配对概率;λ为区间[0,1]之间的常数;r(Q,Vi)为群体Q与群体Vi的不相关指数;rmax表示最大不相关指数;rmin表示最小不相关指数;ravg表示平均不相关指数[21];L为Q的交叉配对池中样本的个数。

变异操作是染色体的某位能自发进行突变形成新的染色体的过程。采用二进制编码进行变异操作,即二进制位串中0突变为1、1突变为0,可以引入变异概率进行此项操作。变异操作可以改善遗传操作过程中局部最优解的问题,据研究,单峰函数变量转变的概率与变量的个数ω成反比[16],变异概率pm最好为1/ω。

1.5 预测结果

对新生的参数个数种群进行评价,即验证中止条件,决定是否继续进行遗传操作。进行完一次遗传操作后会得到一组新的参数个数群体,根据样本气象数据值,利用最小二乘法,求解矩阵X×A=Y中的向量A。其中:

X=∑■■x■■ ∑■■x■■ … ∑■■x■■ ■ ■ ■∑■■x■■ ∑■■x■■ … ∑■■x■■ (6)

A=(a0,a1,…,am)T (7)

Y=■x■■Yj,■x■■Yj,…,■x■■Yj (8)

对于不同的m,可求得相对应的向量A,确定气象数据值与时间的多项式函数,得出作为适应度函数参数时刻的预测值,计算相应的适应度函数W。由于本方法随机初始化群体,因此不以适应度函数值的大小决定遗传操作是否停止。根据样本气象数据的数量确定遗传代数,当达到规定的遗传代数之后,根据适应度函数值得出最适合的模型族参数个数m,再次利用向量A确定的多项式得出所求时刻点的气象数据预测值。

2 实例分析

自动气象站控制系统在运行过程中需要进行部分时刻气象观测数据的检测,达到对自动气象站运行过程中可能出现状况进行预警的目的,并同时粗略预测某些时刻的气象数据值。将基于遗传算法的气象数据分析预测方法应用到某类具体的气象数据中,验证本方法在自动气象站中的可行性。

2.1 实例数据准备

从中国气象局综合观测培训实习基地(南京)的数据库中读取自动气象站在南京信息工程大学的气象观测数据作为基于遗传算法的气象数据分析预测方法的样本。表1是从数据库中抽取的一段时间内(2011年5月28日15:48—15:59)12个等时距时刻电场强度的观测值(观测值取该时刻整点0秒时刻数据),将其作为样本数据预测2011年5月28日16:00的电场强度。

初始化群体个数为20组,遗传进化代数为100代,原始交叉概率p■取0.85,变异概率pm取0.05, 公式(5)中的λ取0.5,整个算法随机运行50次。

2.2 算法实现

对表1中的原始气象数据进行预处理,按照公式(1)将时间分量平整化为整型对称序列T(-4,-3,-2,-1,0,1,2,3,4,5),便于接下来的操作。用此序列按照多项式模型族表征电场强度分量:

Y(x)={■aixi |m∈{0,1,…,255}} (9)

式中,Y(x)为电场强度分量;x为平整化后整型序列T中的某一时刻点;m为多项式模型族参数的上界,设定m的范围区间为[0,255],采用位长为8的二进制编码表示。参照公式(3),用15:58和15:59两个时刻的电场强度观测值作为适应度函数W的的参数值,则W的计算公式为:

W=-■ (10)

利用遗传操作求参数个数种群m的最优解。随机初始化m,考虑到m的区间为[0,255],因此初始化m的个数为20。对于任意给定的,使用公式(6)-(8)结合样本数据值得到相应的多项式模型族的参数(a0,a1,…,am)T,根据电场强度和时间的多项式得出Y6和Y7的大小,进而确定给定种群m的适应度函数值。根据适应度函数值确定的自适应概率进行遗传交叉操作。每次遗传操作生成新的子代后进行锦标赛选择操作,使群体个数始终维持在20。按照要求进行100次进化,整个方法随机进行50次。经过实验,得出最优群体为00000100,即m=4。此时参数A=(3.065 450,0.006 412,0.005 618,0.000 488),Y6=3.007 00,Y7=3.002 30,适应度函数W=0.000 301 09,预测曲线为:Y=3.065 450+0.006 412x-0.005 618x2+0.000 488x3。利用该多项式得出预测结果Y8=3.00705≈3.01,即在2011年5月28日16:00时刻的电场强度的预测值为3.01 kV/m。

2.3 结果分析

查取自动气象站在2011年5月28日16:00:00的气象观测数据,得到电场强度的观测值为3.01 kV/m。在本数据库电场强度精度条件下,预测值与观测值相等。对于自动气象站控制系统而言,数据检验通过,未发现任何异常,自动气象站工作状态正常。本组试验数据较好地证明了基于遗传算法的气象数据分析预测方法对自动气象站的适用性。

将拟合出的多项式预测曲线与实际观测值模拟显示出来,如图2所示。从图2可以发现,观测值在这些时刻点存在波动,预测曲线的走向与波动趋势基本一致。该曲线没有通过所有样本数据,但是在预测时刻点(横坐标8处)基本与电场强度的观测值相一致。表明本方法针对不同时刻点进行数据预测得出的多项式具有惟一性,不能利用此预测曲线预测其他时刻点的电场强度。在实际应用过程中,必须根据样本数据的数量和观测值结合算法的参数动态进行具体操作,这样可以有效提高预测数据的准确性,保证气象数据的观测质量。

以文中所介绍的方法进行多组电场强度的预测试验,进一步验证本方法在气象数据预测中的可行性。各组试验的预测时刻点的预测值的参考样本数据由该点观测值之前的12组以分钟为间隔的观测值所决定,算法中的各个参数与上组试验相同,预测时刻点选取2011年5月28日16:00—16:37。预测值和观测值以及相对误差结果如表2所示,图3为预测值与观测值的比较图。

分析表2和图3中的结果可以发现,各个时刻点的预测值与观测值存在相对误差。对于自动气象站控制系统而言,将气象数据的预测值用于检测观测值的时候需要设定一个误差阈值。设定误差阈值可以选出自动气象站运行过程中的异常时刻点,误差阈值如果设定过小会导致虚警,同时造成系统不必要的开销;如果设定过大会漏报性能告警,扰乱自动气象站的正常工作。由于之后将对异常时刻点的数据进行再次预测实现异常处理,虚警出现的概率很小,故可设定误差阈值为10%。将相对误差大于该阈值的时刻点列为观测数据异常点,异常点可能是由于大气环境突变或自动气象站运行故障所引起的。本方法在实际应用中检测出的异常点可以提高气象观测数据的利用价值,也对自动气象站控制系统的功能实现起到一定的帮助作用。异常点之后的时刻点的预测值缓慢贴近观测值,说明单个异常点对其作为样本时刻点的气象数据预测过程影响较小,本预测方法具有鲁棒性,这也从侧面解释了图2中的预测曲线并没有与所有样本数据完全契合的原因。

自动气象站在运行过程中,当控制系统对这些异常时刻点(16:02、16:11、16:25、16:26、16:35)的电场强度观测数据进行检验时,针对异常可能出现的原因检查异常时刻点相邻间隔度以秒为单位的观测数据,做出异常处理,确定这些时刻点是否存在大气环境的突变或自动气象站的运行故障,从而发出正确的警报。从数据库中读取自动气象站在2011年5月28日16:02:00相邻时刻以秒为时间间隔的电场强度的观测值(表3),以该组观测值作为样本,采用基于遗传算法的气象数据分析预测方法结合本次试验的各个参数得到16:02:00的预测数据值为3.41 kV/m,与观测值的相对误差为0.9%,表明此时刻电场强度观测值的相对异常是由于大气环境突变造成的,并非存在干扰或者仪器故障,自动气象站运行正常。试验中其他异常时刻点经过检测也确定了其电场强度的异常是由大气环境突变所造成。

基于遗传算法的气象数据分析预测方法从与预测点相关的观测数据入手,对于不同的情况具体考虑和分析,有很好的扩展性,能够较准确预测气象数据。在自动气象站的控制系统中采用该分析预测方案,通过观测数据和预测数据的比较,有助于反馈自动气象站运行过程中存在的异常,报告大气环境出现的突变情况,保障自动气象站的正常工作。

3 总结

对于气象数据而言,时间与数据值满足某种函数关系,可以粗略地拟合成某种曲线,这样就为简单预测某个时刻的数值创造了条件。基于遗传算法的气象数据分析预测方案是对函数关系中不确定的参数个数群体进行遗传调整,根据适应度函数求得最合适的曲线方程,达到气象数据预测和检验的效果。通过对一段时间内多个时刻点电场强度的预测实验进一步说明了本方法在自动气象站中的可行性,分析试验结果发现其误差较小,同时具有鲁棒性,满足自动气象站控制系统的基本需要,可以起到改善控制系统功能的目的。因此,这种基于遗传算法的气象数据分析预测方法完全可以应用于自动气象站控制系统,对保证自动气象站的稳定运行和提高气象资料的利用效果有重要的意义。

参考文献:

[1] 李 黄.自动气象站实用手册[M].北京:气象出版社,2007.4-5.

[2] 白雪峰,蒋国栋.基于改进K-means聚类算法的负荷建模及应用[J].电力自动化设备,2010,30(7):80-83.

[3] 李 蔚,盛德仁,陈坚红,等.双重BP神经网络组合模型在实时数据预测中的应用[J].中国电机工程学报,2007,27(17):94-97.

[4] DUAN G L, LIU P, CHEN P, et al. Short-term traffic flow prediction based on rough set and support vector machine[A]. IEEE.2011 Eighth International Conference on Fuzzy Systems and Knowledge Discovery(FSKD)[C]. New York:IEEE, 2011.1526-1530.

[5] 孙申申,任会之,康 雁,等.基于遗传算法和支持向量机的肺结节检测[J].系统仿真学报,2011,23(3): 497-501.

[6] BAI L,CHEN H. A new kind of on-line prediction BSE method based on genetic algorithm[A]. IEEE.2009 International Conference on Wireless Communications & Signal Processing (WCSP)[C]. New York:IEEE,2009.1-5.

[7] 方水良,姚嫣菲,赵诗奎.基于遗传算法的柔性车间多目标优化调度[J].机电工程,2011,28(3):269-274.

[8] 唐杰斌,周渝慧,陈向婷,等.基于遗传算法与蚁群算法的电网规划[J].电力需求侧管理,2011, 13(2):12-15.

[9] ZENG Y C,YUAN F,YONG G, et al. Research on logistics vehicle routing problem based on genetic algorithm[A]. IEEE.2011 IEEE 3rd International Conference on Communication Software and Networks(ICCSN)[C]. New York:IEEE, 2011.232-235.

[10] BOX G E P,JENKINS G M,REINSEL G C. 时间序列分析——预测与控制[M].顾 岚,范金城,译.北京:中国统计出版社,1997.

[11] 周 明,孙树栋.遗传算法原理及应用[M].北京:国防工业出版社,1999.4.

[12] 陈国良,王煦法,庄镇泉,等.遗传算法及其应用[M].北京:人民邮电出版社,1996.3-4.

[13] MEHMED K.数据挖掘——概念、模型、方法和算法[M].闪四清,陈 茵,程 雁,译.北京:清华大学出版社,2003.6-7.

[14] 辛 馡,朱鳌鑫.遗传算法的适应度函数研究[J].系统工程与电子技术,1998(11):58-62.

[15] 张超群,郑建国,钱 洁.遗传算法编码方案比较[J].计算机应用研究,2011,28(3):819-822.

[16] 王小平,曹立明.遗传算法——理论、应用与软件实现[M].西安:西安交通大学出版社,2002.21-25.

[17] 余有明,刘玉树,阎光伟.遗传算法的编码理论与应用[J].计算机工程与应用,2006(3):86-89.

[18] WHITLEY D, MATHIAS K, FITZHORN P. Delta coding: An iterative search strategy for genetic algorithms[A]. BELEW R K, BOOKER L B.Proceedings of the 4th International Conference on Genetic Algorithms(ICGA)[C]. San Francisco:Morgan Kaufmann, 1991.77-84.

[19] WANG X C, XIAO J X, ZHANG Q. An optimal design of genetic operation[A]. IEEE.2009 International Conference on Computational Intelligence and Software Engineering (CISE)[C]. New York:IEEE, 2009.1-8.

[20] 张 琛,詹志辉.遗传算法选择策略比较[J].计算机工程与设计,2009,30(23):5471-5474.

[21] 蔡良伟,李 霞.遗传算法交叉操作的改进[J].系统工程与电子技术,2006,28(6):925-928.

[22] 卢厚青,陈 亮,宋以胜,等.一种遗传算法交叉算子的改进算法[J].理工大学学报(自然科学版),2007,8(3):250-253.

上一篇:粉煤灰场复垦地层状土壤水分变化 下一篇:厌氧水解—二段生物接触氧化法处理生活污水动...