韓曉飛,潘存英,羅詞建
(1.中國(guó)科學(xué)技術(shù)大學(xué),合肥 230026;2.陜西省地震局,西安 710068;3.韓城地震臺(tái),陜西 韓城 715403)
基于遺傳算法的廣義回歸神經(jīng)網(wǎng)絡(luò)在地震預(yù)測(cè)中的應(yīng)用
韓曉飛1,2,潘存英3,羅詞建2
(1.中國(guó)科學(xué)技術(shù)大學(xué),合肥 230026;2.陜西省地震局,西安 710068;3.韓城地震臺(tái),陜西 韓城 715403)
提出了利用基于遺傳算法結(jié)合廣義回歸神經(jīng)網(wǎng)絡(luò)(GRNN)進(jìn)行地震預(yù)測(cè)的新方法。利用遺傳算法的全局搜索能力、不易陷入局部極小點(diǎn)等優(yōu)點(diǎn)來(lái)優(yōu)化GRNN的徑向基函數(shù)中心、寬度以及輸出層的權(quán)值,使得計(jì)算結(jié)果全局最優(yōu)。在實(shí)際地震數(shù)據(jù)中選取了100組樣本數(shù)據(jù)進(jìn)行仿真實(shí)驗(yàn),并利用MATLAB進(jìn)行仿真。仿真結(jié)果表明,本文提出的方法具有較高的精度和一定的理論指導(dǎo)意義。
廣義回歸神經(jīng)網(wǎng)絡(luò);遺傳算法;地震預(yù)測(cè)
地震預(yù)測(cè)是對(duì)未來(lái)地震的發(fā)震時(shí)間、發(fā)震地點(diǎn)和震級(jí)做出預(yù)報(bào)。由于地震的孕育發(fā)生過(guò)程是一個(gè)復(fù)雜的、非線性以及不確定的動(dòng)力學(xué)系統(tǒng),它至今是一個(gè)世界性的科學(xué)難題,也是現(xiàn)代高科技的前沿課題。目前,國(guó)內(nèi)外地震學(xué)家在地震預(yù)測(cè)中所使用的方法主要有以下3大類:(1)非確定性數(shù)學(xué)方法;(2)物理學(xué)方法;(3)新發(fā)展的系統(tǒng)科學(xué)方法。
隨著計(jì)算機(jī)技術(shù)的發(fā)展和普及,以及計(jì)算機(jī)智能的迅速發(fā)展,智能化的計(jì)算方法成為研究的一個(gè)熱點(diǎn)問(wèn)題,其中包括神經(jīng)網(wǎng)絡(luò)、遺傳算法、模糊控制以及專家系統(tǒng)等。由于神經(jīng)網(wǎng)絡(luò)具有非線性擬合能力、很強(qiáng)的容錯(cuò)性和魯棒性,故本文采用廣義回歸神經(jīng)網(wǎng)絡(luò)對(duì)地震進(jìn)行預(yù)測(cè)。但是由于GRNN易陷入局部最小值,進(jìn)而利用遺傳算法來(lái)對(duì)GRNN進(jìn)行優(yōu)化,從而得到全局最優(yōu)值。
廣義回歸神經(jīng)網(wǎng)絡(luò)(Generalized Regression Neural Network,簡(jiǎn)稱GRNN)是美國(guó)學(xué)者Donald F.Specht在1991年提出的。它是徑向基函數(shù)網(wǎng)絡(luò)的一種,是一種三層靜態(tài)前向網(wǎng)絡(luò),其拓?fù)浣Y(jié)構(gòu)如圖1所示。第一層為輸入層,由信號(hào)源節(jié)點(diǎn)組成;第二層為隱含層,其單元數(shù)根據(jù)所描述問(wèn)題的需要而定;
第三層為輸出層,它對(duì)輸入模式的作用做出響應(yīng)。
圖1徑向基神經(jīng)元模型結(jié)構(gòu)
GRNN具有很強(qiáng)的非線性映射能力和柔性網(wǎng)絡(luò)結(jié)構(gòu),以及高度的容錯(cuò)性和魯棒性,適于非線性問(wèn)題的研究,在逼近能力和學(xué)習(xí)速度上較RBF網(wǎng)絡(luò)有著較強(qiáng)的優(yōu)勢(shì)。網(wǎng)絡(luò)最后收斂于樣本量積聚較多的優(yōu)化回歸面,并且在樣本數(shù)據(jù)較少時(shí),預(yù)測(cè)效果也較好。此外,網(wǎng)絡(luò)還可以處理不穩(wěn)定的數(shù)據(jù)。利用徑向基神經(jīng)元和線性神經(jīng)元就可以建立廣義回歸神經(jīng)網(wǎng)絡(luò),其神經(jīng)元模型結(jié)構(gòu)如圖2所示。
GRNN每個(gè)隱含層節(jié)點(diǎn)都有2個(gè)重要的參數(shù),即徑向基函數(shù)的中心和寬度。中心的選取對(duì)于神經(jīng)網(wǎng)絡(luò)的函數(shù)逼近能力具有很大的影響,不恰當(dāng)?shù)倪x取會(huì)使網(wǎng)絡(luò)收斂慢,甚至造成網(wǎng)絡(luò)發(fā)散;而寬度決定了網(wǎng)絡(luò)對(duì)輸入數(shù)據(jù)的響應(yīng)范圍。除此之外,隱含層到輸出層的連接權(quán)是另外一個(gè)需要訓(xùn)練的參數(shù)。然而,GRNN常規(guī)的學(xué)習(xí)規(guī)則很容易使結(jié)果收斂到局部最小,甚至根本不收斂。所以采用遺傳算法對(duì)GRNN進(jìn)行優(yōu)化,以求得全局最優(yōu)值。其具體操作過(guò)程如下。
圖2 廣義回歸神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
以往的訓(xùn)練方法大都屬于混合方式,這種方法將聚類和獲取權(quán)重分為不相關(guān)的兩個(gè)獨(dú)立的過(guò)程,失去了整個(gè)RBF網(wǎng)絡(luò)的完整性。為克服上述缺點(diǎn),本文將RBF網(wǎng)絡(luò)的參數(shù)統(tǒng)一編碼,將三種參數(shù)編到一個(gè)染色體中。對(duì)于RBF神經(jīng)網(wǎng)絡(luò),中心是重要參數(shù),對(duì)網(wǎng)絡(luò)性能有很大影響,不同的中心對(duì)應(yīng)著不同的寬度,中心變化,寬度也隨之變化,所以采用中心和寬度交替排列的編排順序。對(duì)于一個(gè)染色體串,具體的編碼方式是:不同的中心和對(duì)應(yīng)的寬度順次排列,再順序編排各個(gè)調(diào)節(jié)權(quán)重。同時(shí),根據(jù)神經(jīng)網(wǎng)絡(luò)訓(xùn)練的精度要求,預(yù)設(shè)網(wǎng)絡(luò)隱層節(jié)點(diǎn)個(gè)數(shù)P,在計(jì)算過(guò)程中根據(jù)逼近程度調(diào)整P,最終滿足精度要求或精度不再提高。通??上冗x擇較小的P值,再不斷增加。這樣每個(gè)染色體串的長(zhǎng)度為MP+P+NP,其中M為輸入節(jié)點(diǎn)數(shù),P為隱層節(jié)點(diǎn)數(shù),N為輸出節(jié)點(diǎn)數(shù)。其染色體結(jié)構(gòu)圖如表1所示。
表1 染色體編碼串
常用的編碼方式有二進(jìn)制和實(shí)數(shù)編碼2種。二進(jìn)制編碼具有編碼、解碼操作簡(jiǎn)單,交叉、變異操作便于實(shí)現(xiàn)等優(yōu)點(diǎn)。然而二進(jìn)制存在著連續(xù)函數(shù)離散化時(shí)的映射誤差。個(gè)體編碼串較短時(shí),可能達(dá)不到精度要求;而個(gè)體編碼串長(zhǎng)度較長(zhǎng)時(shí),雖然提高編碼精度,但卻會(huì)使遺傳算法的搜索空間急劇增大,尤其對(duì)于RBF網(wǎng)絡(luò)這種優(yōu)化參數(shù)比較多的情況,其巨大的搜索空間會(huì)使得遺傳算法性能相當(dāng)差,甚至無(wú)法進(jìn)行下去。而實(shí)數(shù)編碼(浮點(diǎn)數(shù)編碼)是個(gè)體的每個(gè)基因值都用某一個(gè)范圍內(nèi)的浮點(diǎn)數(shù)表示,個(gè)體編碼長(zhǎng)度等于其決策變量的個(gè)數(shù)。便于在較大空間的遺傳搜索,且精度高于二進(jìn)制編碼,因此本文采用實(shí)數(shù)編碼方式。
種群的大小對(duì)遺傳算法的影響很大,種群數(shù)目大,可以增加種群中個(gè)體的多樣性,容易找到最優(yōu)解,但會(huì)延長(zhǎng)算法收斂的時(shí)間;種群數(shù)目小,可以加快算法的收斂,但容易陷入局部極小值。
適應(yīng)度是遺傳算法中描述個(gè)體性能的主要指標(biāo)。一般個(gè)體適應(yīng)度取值越大,個(gè)體的性能越好;反之,個(gè)體適應(yīng)度越小,個(gè)體性能越差。在遺傳算法中,適應(yīng)度的值必須是大于等于0的數(shù)。因此,將目標(biāo)函數(shù)轉(zhuǎn)換成適應(yīng)度函數(shù),一般需遵循2個(gè)基本原則:適應(yīng)度值必須大于等于0;優(yōu)化過(guò)程中目標(biāo)函數(shù)變化(如向目標(biāo)函數(shù)最大值變化或最小值變化)方向應(yīng)與群體進(jìn)化過(guò)程中適應(yīng)度函數(shù)變化方向一致。訓(xùn)練RBF神經(jīng)網(wǎng)絡(luò)的目標(biāo)是使網(wǎng)絡(luò)的精確度函數(shù)達(dá)到最小,精確度由網(wǎng)絡(luò)期望輸出與實(shí)際輸出之間的誤差決定,因此建立適應(yīng)度函數(shù)為:
其中,Yj(i)和ˉYj(i)分別表示訓(xùn)練數(shù)據(jù)i在第j個(gè)輸出節(jié)點(diǎn)的實(shí)際輸出和期望輸出,K和N 分別是輸出節(jié)點(diǎn)數(shù)和輸入數(shù)據(jù)的數(shù)目。
本文的選擇操作采用賭輪選擇(比例選擇)方法,賭輪選擇是遺傳算法選擇操作最常用的方法。它是將所有個(gè)體的適應(yīng)度之和看作一個(gè)輪盤,根據(jù)適應(yīng)度的大小,將每個(gè)個(gè)體與輪盤中某些部分對(duì)應(yīng)起來(lái),然后旋轉(zhuǎn)輪盤上的指針,指針?biāo)谔帉?duì)應(yīng)的個(gè)體被選中。應(yīng)用計(jì)算機(jī)操作的具體方法是:對(duì)上代群體中所有個(gè)體的適應(yīng)度進(jìn)行累加得適應(yīng)度之和∑F:根據(jù)各個(gè)個(gè)體的適應(yīng)度值的大小,將各個(gè)個(gè)體與[0,∑F]上某區(qū)域建立對(duì)應(yīng)關(guān)系;在[0,∑F]范圍內(nèi)產(chǎn)生一個(gè)隨機(jī)數(shù);隨機(jī)數(shù)所在的區(qū)域?qū)?yīng)的個(gè)體被選擇。顯然,個(gè)體適應(yīng)度值越大,被選擇的幾率越大。
針對(duì)本文的實(shí)數(shù)編碼方式,交叉操作采用3點(diǎn)算術(shù)交叉方案。其具體做法為:首先產(chǎn)生3個(gè)隨機(jī)數(shù)并轉(zhuǎn)換成需要進(jìn)行交叉操作的實(shí)數(shù)位置。如圖3中的3個(gè)隨機(jī)數(shù)為3、6、9,表明將對(duì)染色體中的第3、第6和第9實(shí)數(shù)進(jìn)行交叉操作。然后針對(duì)確定3對(duì)實(shí)數(shù)采用算術(shù)交叉產(chǎn)生下一代群體。
圖3 交叉操作
算術(shù)交叉是由2個(gè)實(shí)數(shù)的線性組合而產(chǎn)生2個(gè)新的個(gè)體。假設(shè)對(duì)父代染色體中的Xk和Yk進(jìn)行算術(shù)交叉,則交叉運(yùn)算后所產(chǎn)生的2個(gè)實(shí)數(shù)為:
式中,β為取值范圍在(0,1)內(nèi)的常數(shù),本文取交叉概率Pc=0.6。
在二進(jìn)制編碼中,被選中的變異位進(jìn)行取反運(yùn)算,即如果是“0”則變?yōu)椤?”,如果是“1”變?yōu)椤?”。但是,對(duì)于實(shí)數(shù)編碼則不同于二進(jìn)制編碼。本文采用的是2點(diǎn)按位變異,首先隨機(jī)生成變異點(diǎn)的位置(與交叉點(diǎn)的選取方法相同),然后在參數(shù)取值范圍之內(nèi)生成2個(gè)隨機(jī)數(shù),替換變異點(diǎn)原有的實(shí)數(shù),替換后的新個(gè)體作為下一代染色體。
根據(jù)前面遺傳算法優(yōu)化GRNN的方法,整個(gè)地震預(yù)測(cè)模型設(shè)計(jì)流程如下:
1、對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理,以達(dá)到訓(xùn)練要求;
2、根據(jù)確定的編碼方式和種群大小,用隨機(jī)數(shù)發(fā)生器,對(duì)種群進(jìn)行初始化,生成初始種群P(t),并設(shè)進(jìn)化代數(shù)t=0;
3、將染色體個(gè)體進(jìn)行解碼操作,得出G R NN的3個(gè)重要參數(shù),并通過(guò)G R NN的結(jié)構(gòu)公式計(jì)算出輸入訓(xùn)練樣本所對(duì)應(yīng)的輸出;
5、找出群體中適應(yīng)度值最高和最低的個(gè)體,采用最優(yōu)保存策略;
6、判斷適應(yīng)度值是否滿足收斂精度要求,如滿足,則結(jié)束,如未滿足,轉(zhuǎn)到下一步;
7、判斷當(dāng)前進(jìn)化代數(shù)t是否達(dá)到最大進(jìn)化代數(shù),如達(dá)到,則結(jié)束,如未達(dá)到,轉(zhuǎn)到下一步;
8、對(duì)當(dāng)前種群進(jìn)行選擇、交叉、變異操作;
9、通過(guò)遺傳操作,生成新一代種群,當(dāng)前進(jìn)化代數(shù)t=t+1,轉(zhuǎn)到第3步。
以上訓(xùn)練過(guò)程結(jié)束后,得到最終的進(jìn)行地震預(yù)測(cè)的G R NN,再通過(guò)測(cè)試樣本進(jìn)行測(cè)試,觀察計(jì)算結(jié)果與實(shí)際地震參數(shù)的誤差。算法的整體流程圖如圖4所示。
圖4 算法整體流程圖
以陜西省漢中地震臺(tái)觀測(cè)資料對(duì)應(yīng)陜西周邊地區(qū)2006—2011年的地震資料作為樣本源,選擇地震前3天的日均值數(shù)據(jù)作為樣本數(shù)據(jù)(表2)。實(shí)現(xiàn)基于G R NN的地震預(yù)報(bào)。根據(jù)這些地震資料,提取出7個(gè)預(yù)報(bào)因子和實(shí)際發(fā)生的震級(jí)作為輸入和目標(biāo)向量。根據(jù)相關(guān)文獻(xiàn)分析以及對(duì)地震活動(dòng)前兆觀測(cè)量的調(diào)查,最終選定預(yù)報(bào)因子為:(1)氣氡;(2)氣汞;(3)氣溫;(4)氣壓;(5)垂直擺;(6)伸縮儀;(7)水管儀。一共收集了100組樣本數(shù)據(jù),其中列出了后15組地震數(shù)據(jù)(表3)。
表2 地震樣本
表3 學(xué)習(xí)樣本
其中前95組樣本數(shù)據(jù)作為訓(xùn)練樣本,最后5組數(shù)據(jù)作為測(cè)試樣本。按照上述設(shè)計(jì)步驟,建立仿真模型如下。
圖5是采用BP神經(jīng)網(wǎng)絡(luò)得到的仿真圖,其中圖(a)是樣本誤差曲線,從圖中可以看出經(jīng)過(guò)167步,曲線誤差達(dá)到0.001。(b)圖‘+’代表預(yù)測(cè)值,‘-’表示實(shí)際地震級(jí)數(shù)。(c)圖是經(jīng)過(guò)B P神經(jīng)網(wǎng)絡(luò)對(duì)地震進(jìn)行預(yù)測(cè)后所得到的震級(jí)與實(shí)際震級(jí)的相對(duì)誤差曲線。
圖5 BP神經(jīng)網(wǎng)絡(luò)的地震預(yù)測(cè)
圖6為采用本文所介紹的GA-GRNN方法得到的仿真圖,其中(a)是樣本訓(xùn)練的誤差曲線,從圖中可以看出經(jīng)過(guò)5步,曲線誤差達(dá)到0.001。(b)圖‘+’代表預(yù)測(cè)值,‘-’表示實(shí)際地震級(jí)數(shù)。(c)圖是經(jīng)過(guò)B P神經(jīng)網(wǎng)絡(luò)對(duì)地震進(jìn)行預(yù)測(cè)后所得到的震級(jí)與實(shí)際震級(jí)的相對(duì)誤差曲線。
圖6 GA-GRNN方法的地震預(yù)測(cè)
表4為BP算法和本文使用的GA-GRNN方法對(duì)地震預(yù)測(cè)結(jié)果的比較。
從仿真結(jié)果可以看出,本文所提出的GAGRNN方法訓(xùn)練步數(shù)相比BP算法大為減少,BP算法達(dá)到訓(xùn)練目標(biāo)需要167步,而本文算法只需5步;其次,由于遺傳算法的引進(jìn),使得GA-GRNN方法可以尋找到全局最優(yōu)解,從地震預(yù)測(cè)的結(jié)果及預(yù)報(bào)誤差分析來(lái)看,GA-GRNN方法相比BP算法有著更高的精度。
表4 B P算法與G A-G R N N方法比較
地震預(yù)測(cè)是個(gè)世界性的科學(xué)難題,本文提出GA-GRNN方法來(lái)對(duì)地震進(jìn)行預(yù)測(cè),通過(guò)搭建B P神經(jīng)網(wǎng)絡(luò)模型以及本文所提出的GA-GRNN模型比較,說(shuō)明本文所提出的GA-GRNN方法相比傳統(tǒng)的BP法預(yù)測(cè)方法不僅可以找到全局最優(yōu)解,而且有著更少的訓(xùn)練步數(shù),證明了本文所提出的方法在地震預(yù)測(cè)的可行性。
[1] 梅世蓉,馮德益.中國(guó)地震預(yù)測(cè)概論[M].北京:地震出版社,1993.
[2] 蔣長(zhǎng)勝.與地震預(yù)測(cè)有關(guān)的關(guān)鍵物理問(wèn)題[J].國(guó)際地震動(dòng)態(tài),2007,(2):1-8.
[3] 王培德.對(duì)推進(jìn)地震預(yù)測(cè)工作的一些政策問(wèn)題的討論[J].國(guó)際地震動(dòng)態(tài),2009,(9):2-10.
[4] 國(guó)家地震局科技監(jiān)測(cè)司.綜合預(yù)測(cè)分冊(cè)[M].北京:地震出版社,1989.
[5] Hung-Ming Lin,Shun-Kung Chang,Jian-Hong Wu,et al.Neural network-based model for assessing failure potential of highway slopes inthe Alishan,Taiwan Area:Pre-and post-earthquake investigation[J].Engineering Geology.2009,104(3):280-289.
[6] 張國(guó)民,張曉東,吳榮輝,等.地震預(yù)測(cè)回顧與展望[J].國(guó)際地震動(dòng)態(tài),2005,(5):3-15.
[7] 歐陽(yáng)志遠(yuǎn).關(guān)于地震預(yù)測(cè)預(yù)測(cè)得認(rèn)識(shí)論和方法論問(wèn)題[J].中國(guó)人民大學(xué)學(xué)報(bào),2009,(1):96-104.
Application of Generalized Regression Neural Network Based onGenetic Algorithm in Earthquake Predication
HAN Xiao-fei 1,2,PAN Cun-ying3,LUO Ci-jian2
(1.University of Science and Technology of China,Hefei 230026,Anhui,China;2.Earthquake Administraton of Shaanxi Province,Xi’an 710068,Shaanx,China;3.Hancheng Seismic Station,Hancheng 715403,Shaanxi,China)
A new method was proposed to predict earthquake through using generalized regression neuralnetwork(GRNN)based on genetic algorithm(GA).Global optimum can be found through using GA’s a-bility of global searching and being not liable to get the minimum to optimize the the center and width ofradial basis function and weights of output layer.At last,using100sample data obtained from actualearthquake,a simulation experiment is done based on MATLAB.The simulation shows that the methodhas a good result.
generalized regression neural network;genetic algorithm;earthquake prediction
P315.01;P315.75
A
1003-1375(2012)01-0048-06
2011-07-14
韓曉飛(1982-),男(漢族),陜西西安人,工程師﹐主要從事地震觀測(cè)與研究工作.E-mail:liuyun2196@sina.com.cn