APP下载

基于粒子群算法的地震预报方法研究①

2014-08-01张晓煜

地震工程学报 2014年1期
关键词:前兆震级聚类

张晓煜,李 向

(郑州航空工业管理学院计算机科学与应用系,河南 郑州 450015)

0 引言

传统地震预报研究建立在人们对震例数据和前兆观测数据的分析之上,而随着地震台网前兆观测数据的飞速猛增和地震预报研究的深入,该方法已不能满足现实需要[1]。数据挖掘的任务通常可以概括为两类:对海量数据的描述性挖掘和预测性挖掘。随着数据挖掘技术的不断发展,各类数据挖掘算法在财务分析、通信运营、生物科技、入侵检测等应用领域得到广泛应用,该技术在地震预报中也有广泛的应用前景[2]。代表性的研究有:文献[3]提出了用神经网络方法通过大量样本的学习抽取隐含在数据中的震级识别因果关系,但是该模型依赖于样本选择,可重用性较差,且计算收敛性问题有待研究。文献[4]提出了一种新的模糊规则提取方法,采用基于山峰函数的减法聚类自适应确定聚类中心,并给出4条基于孕震空区长轴的震级预报模糊规则。由于该方法基于自组织神经网络模型训练规则,同样是基于有效样本的震级预报模型,并且预报规则仅考虑了前兆观测众多数据种类的一种。文献[5]把时间序列相似性匹配的概念和方法引入到地震预报中,该方法的重点是建立时间序列的相似性度量模型,是对地震历史源数据和地质构造专家经验知识的相似性挖掘。文献[6-8]对地震参数预测预报中粒子群算法的应用进行了深入研究,建立了不同的反演模型,分别用于反演震源时间函数、振幅谱、断裂活动速率等参数。文献[9]利用粒子群算法优化LSSVM模型的惩罚因子和核函数参数,建立了PSO地震预测模型,其本质是利用非线性系统建模进行预测,该模型使用有限样本数据检测模型预测结果及误差,可得到在已有数据信息下的最优解。

由于影响地震的因素较多,实际地震预报具有震级、时间、区域等预报多重困难的特性。一方面震级与前兆及异常的种类有一定关系,另一方面地质构造与异常及时间又有极大的不确定性。因此传统的数据挖掘及人工智能算法往往不能正确预报。

本文提出基于粒子群聚类算法的地震预报方法,面向前兆数据的多维特性,利用群体智能的分布式和自组织特征,建立新的地震预报模型。该方法克服了神经网络方法对数据样本选取的依赖,不需要设计网络拓扑结构,对史源震例数据的分析和实验结果表明,该方法优于经典的k-means聚类算法,稳定性强,对震级的预报准确性更高。

1 粒子群算法的基本原理

群体智能研究主要包括蚁群算法和粒子群算法[10]。其中粒子群算法[11]是由 Kennedy和 Eberhart通过对鸟群、鱼群和人类社会某些行为进行观察研究,于1995年提出的一种新颖的进化算法。粒子群优化(Particle Swarm Optimization,即PSO)是一种新兴的基于群体智能的启发式全局随机搜索算法,具有易理解、易实现、全局搜索能力强等特点,有很多学者对此进行研究,并建立模型推广应用于数据分析[12]。

与其他进化算法一样,粒子群算法也是基于“种群”和“进化”的概念,通过个体间的协作与竞争,实现复杂空间最优解的搜索;同时,PSO又不像其他进化算法那样要对个体进行交叉、变异、选择等进化算子操作,因此具有很好的生物社会背景,容易理解、参数少且易实现,对非线性、多峰问题具有较强的全局搜索能力。

粒子群算法有6个基本步骤,可用流程图1表示,具体描述如下:

图1 粒子群算法流程图Fig.1 The flow chart of particle swarm algorithm

(1)初始化粒子群,包括群体规模N ,每个粒子的位置xi和速度Vi;

(2)计算每个粒子的适应度值Fit[i];

(3)对每个粒子,用它的适应度值 Fit[i]和个体极值Pbest(i)比较,如果 Fit[i]>Pbest(i),则用Fit[i]替换掉Pbest(i);

(4)对每个粒子,用它的适应度值Fit[i]和全局极值gbest比较,如果 Fit[i]>Pbest(i)则用Fit[i]替换gbest;

(5)根据公式(1)和(2)更新粒子的速度υi和位置xi;

(6)如果满足结束条件(误差足够好或到达最大循环次数)退出,否则返回(2)。

在公式(1)和(2)中:c1和c2为学习因子,也称加速常数,γ1和γ2为[0,1]范围内的均匀随机数。式(1)右边由三部分组成,第一部分为“惯性”部分,反映了粒子的运动习惯,代表粒子有维持自己先前速度的趋势;第二部分为“认知”部分,反映了粒子对自身历史经验的记忆,代表粒子有向自身历史最佳位置逼近的趋势;第三部分为“社会”部分,反映了粒子间协同合作与知识共享的群体历史经验,代表粒子有向群体或邻域历史最佳位置逼近的趋势。根据经验,通常c1=c2=2。i=1,2,Λ,D。υid是粒子的速度,υid∈[-υmax,υmax],υmax是常数,由用户设定用来限制粒子的速度。

2 基于粒子群聚类的地震预报

2.1 数据背景

地震学异常指标可以分成测震学指标和前兆指标两大类。在《中国震例》一书中,按照观测手段统计,前者测震学异常指标有74项,后者前兆异常指标有84项。对于这些指标的含义,在地震学分析预报方法程式指南[13]中有明确说明。有学者专门研究如何从众多复杂的地震异常指标中筛选出核心异常的约简算法,文献[3]选择在历史震例数据中出现次数相对较多的14项异常指标作为基础数据进行分析。这14项异常指标可分为两类:

(1)地震学异常时间:条带、空区、应变释放、地震频次、b值、地震窗、波速比。

(2)前兆异常时间:短水准、地倾斜、地电、水氡、水位、应力、宏观。

式中:yi,j表示新位置的植株,xi,j∈[aj,bj]表示Xi的第j条路径值,aj,bj分别为搜索空间的上边界值与下边界值,α是[0,1]的随机数。将种群按照适应度值优劣分为两类:

由于一次地震前可能出现多台异常(即多个台站观察都观察到该类异常),并且一项异常可能在孕震的不同阶段出现,因此当某项前兆异常在多个台站出现,可根据常规方法,取各台站加权和为研究对象,计算公式如式(3)所示:

式中tij为某台站某项前兆异常的持续时间;ωj为权值,计算公式为

需要说明的是,如果某台站的某项异常在中期、短期或临震3个阶段中都有异常,《中国震例》一书中取3个异常持续时间,而我们是取异常开始至发震的时间段为tij;如在2个阶段中有异常,则取其2个异常时段的时间之和为tij。

本文选择典型的地震震例验证基于粒子群聚类的地震预报方法,实验中把震级分为三组,第一组为3次7级以上地震序列;第二组为9次6级至6.9级地震序列;第三组为18次5级至5.9级地震序列,实验数据如表1所示。

表1 地震样本数据[3]Table 1 The sample data of earthquake[3]

2.2 算法步骤

本文所提出的基于粒子群聚类的地震预报算法模型描述如下:

(1)对震例原始数据进行归一化,消除量纲效应。

采用区间值归一化变换法对各维数据进行无量纲化处理,设数据样本集为,其中 xi,j表示第i个样本的第j维值,n表示样本的个数,p表示样本的维数。经归一化处理之后的样本可以表示为,计算公式如式(5)所示:

(2)初始化算法参数。

设定粒子数n,对于每个粒子,其位置xi和速度Vi,确定 的r1和r2的初始值为0,在[0,1]范围内由程序自动选取均匀随机数,用于计算更新每个粒子的位置和速度。

(3)应用粒子群算法加快速度,设计更新策略。

(4)设计评价函数,如果算法满足评价函数,则停止算法,输出最优解,否则转到步骤(3)。

3 实验结果与分析

为了验证基于粒子群聚类算法在地震预报中的正确性及效率,在Matlab 2007a环境下进行实验并与经典的k-means聚类算法对比。

3.1 实验结果及准确率分析

经过多次实验,算法中粒子群数目设置为500,参数设置为:α=0.5,k+=0.8,k-=0.5。图2给出了聚类结果谱系图。

从图2中可看出,粒子群聚类算法用于地震预报效果较好,具体数据结果如表2所示。表中分类结果的1代表5~6级地震,2代表6~7级地震,3代表7级以上地震。利用k-means聚类的实验共进行了20次,表2中给出的是最好的一次结果,其中加粗显示的为震级分类错误的序列。

图2 聚类分析谱系图Fig.2 The pedigree chart of cluster analysis

从表2中数据分析可知,k-means算法的总体预报准确率仅为73.3%,而粒子群聚类算法可将准确率提高到83.3%。与k-means算法的结果对比发现,粒子群算法可以将6级以下及7级以上的震级完全正确区分开,而三类震级中,k-means算法准确率分别为88.7%、44.3%和66.7%。

表2 粒子群算法与k-means算法分析地震数据的结果Table 2 The analysis results of PSO and k-means algorithm

3.2 稳定性与时间复杂性分析

对算法步骤和代码分析可知,基于粒子群聚类的地震预报算法时间复杂度为O(n),空间复杂度为O(n2)。

为了分析算法稳定性和时间复杂性,随机选择5次实验结果计算类间平均距离和所用时间,如表3所示。可看出在地震震级预报中,虽然粒子群算法比k-means算法稍微耗时一点,但是粒子群聚类算法进行聚类的平均距离比k-means算法要小,这表明粒子群聚类算法比经典的k-means聚类算法有较好的稳定性优势。

表3 粒子群算法与k-means算法处理地震数据的对比Table 3 The comparison of earthquake data processing of PSO algorithm and k-means algorithm

4 小结

本文采用数据挖掘技术结合群体智能粒子群算法来研究地震预报。实验结果表明,粒子群聚类算法与经典聚类算法k-means相比虽然在计算速度上稍逊一筹,但聚类的平均距离较小,且不依赖于数据样本特征,具有全局优化能力,可以更有效地找到最优解。而且粒子群算法可用于多维数据分析,面向不同数据样本时,能根据不同的衡量参数自行优化,在应用中很有竞争力,是值得深入研究的方法。对于将数据聚类后,如何进行类内更细的分级需要深入研究。当然,这里也需指出,计算机和聚类算法只能是作为地震预报的辅助,并不能取代人们对地震学规律的认识、分析和表达。

(References)

[1]王炜,林命週,马钦忠.数据挖掘及其在地震预报中的应用前景[J].国际地震动态,2005,12:1-13.WANG Wei,LIN Ming-zhou,MA Qing-zhong.The Application Prospect of Data Mining in Earthquake Prediction[J].Recent Developments in World Seismology,2005,12:1-13.(in Chinese)

[2]HAN J.W.Kamber Micheline,PEI J.Data Mining Concept and Techniques(2nd)[M].San Francisco,Morgan Kaufmann Publishers,2006:359-362.

[3]王炜,蒋春曦,张军,等.BP神经网络在地震综合预报中的应用[J].地震,1999,19(2):118-126.WANG Wei,JIANG Chun-xi,ZHANG Jun,et al.The Application of BP Neural Network to Comprehensive Earthquake Prediction[J].Earthquake,1999,19(2):118-126.(in Chinese)

[4]吴淑芳,吴耿锋,王炜.一种新的模糊规则提取方法[J].计算机工程,2005,31(6):157-159.WU Shu-fang,WU Geng-feng,WANG Wei.A New Method for Fuzzy Rule Extraction[J].Computer Engineering,2005,31(6):157-159.(in Chinese)

[5]吴绍春,吴耿锋,王炜,等.寻找地震相关地区的时间序列相似性匹配算法[J].软件学报,2006,17(2):185-192.WU Shao-chun,WU Geng-feng,WANG Wei,et al.A Timesequence Similarity Matching Algorithm for Seismological Relevant Zones[J].Journal of Software,2006,17(2):185-192.(in Chinese)

[6]柳旭峰,许才军.利用改进的粒子群算法反演视震源时间函数[J].地震学报,2013,35(3):151-159.LIU Xu-feng,XU Cai-jun.Retrieving Apparent Source Time Function by Improved PSO Algorithm[J].Acta SeismologicaSinica,2013,35(3):151-159.(in Chinese)

[7]郑建常,陈运泰.基于粒子群优化的双力偶模型振幅谱反演方法及应用[J].地震学报,2012,34(3):308-322.ZHENG Jian-chang,CHEN Yun-tai.Amplitude Spectrum Inversion for Double-couple Source Method with Particle Swarm Optimization Algorithm[J].Acta Seismologica Sinica,2012,34(3):308-322.(in Chinese)

[8]张永志,徐海军,王卫东,等.渭河盆地断裂活动速率的粒子群算法反演[J].西北地震学报,2011,33(4):322-325.ZHANG Yong-zhi,XU Hai-jun,WANG Wei-dong,et al.Inversion on Slip Velocity of Main Faults in Weihe Basin by Particle Swarm Optimization Algorithm with GPS Data[J].Northwestern Seismological Journal,2011,33(4):322-325.(in Chinese)

[9]徐松金,龙文.基于粒子群优化最小二乘向量机的地震预测模型[J].西北地震学报,2012,34(3):220-233.XU Song-jin,LONG Wen.Earthquake Forecast Model Based on the Particle Swarm Optimization Algorithm Used in LSSVM[J].Northwestern Seismological Journal,2012,34(3):220-233.(in Chinese)

[10]余建平,周新民,陈明.群体智能典型算法研究综述[J].计算机工程与应用,2010,46(25):1-4.YU Jian-ping,ZHOU Xin-min,CHEN Ming.Research on Representative Algorithms of Swarm Intelligence[J].Computer Engineering and Application,2010,46(25):1-4.(in Chinese)

[11]Kennedy J,Eberhart R.Particle swarm optimization[C]∥Proceedings of the 4th IEEE International Conference on Neural Networks.Piscataway:IEEE Service Center,1995:1942-1948.

[12]王万良,唐宇.微粒群算法的研究现状与展望[J].浙江工业大学学报,2007,35(2):136-141.WANG Wan-liang TANG Yu.The State of Art in Particle Swarm Optimization Algorithms[J].Journal of Zhejing University of Technology,2007,35(2):136-141.(in Chinese)

[13]国家地震局科技监测司.地震学分析预报方法程式指南[M].北京:地震出版社,1990:7-15.Science and Technology Monitoring of China Earthquake Administration.The Method and Program Guide of Seismological Analysis and Prediction[M].Beijing:Seismological Press,1990:7-15.(in Chinese)

猜你喜欢

前兆震级聚类
基于累积绝对位移值的震级估算方法
地震后各国发布的震级可能不一样?
新震级国家标准在大同台的应用与评估
基于K-means聚类的车-地无线通信场强研究
哪些现象是地震前兆
基于高斯混合聚类的阵列干涉SAR三维成像
基于Spark平台的K-means聚类算法改进及并行化实现
中国地震台网面波震级与矩震级的统计关系
一种层次初始的聚类个数自适应的聚类方法研究
右肝区不适或疼痛是肝癌表现的前兆吗