彭昱忠 ,元昌安,李潔,許明濤,陳冰廉
(1.廣西師范學(xué)院 計算機(jī)與信息工程學(xué)院,廣西 南寧 530021; 2. 廣西師范學(xué)院 北部灣環(huán)境演變與資源利用教育部重點實驗室,廣西 南寧 530001; 3.廣西科技師范學(xué)院 數(shù)計系,廣西 柳州 545004)
?
個體最優(yōu)共享GEP算法及其氣象降水?dāng)?shù)據(jù)預(yù)測建模
彭昱忠1,2,元昌安1,李潔3,許明濤1,陳冰廉1
(1.廣西師范學(xué)院 計算機(jī)與信息工程學(xué)院,廣西南寧 530021; 2. 廣西師范學(xué)院 北部灣環(huán)境演變與資源利用教育部重點實驗室,廣西 南寧 530001; 3.廣西科技師范學(xué)院 數(shù)計系,廣西 柳州 545004)
摘要:針對基因表達(dá)式編程算法存在進(jìn)化后期收斂慢且容易陷入局部最優(yōu)而降低其數(shù)據(jù)建模的性能問題,和降水量因受諸多自然因素相互影響而難以準(zhǔn)確地建模與預(yù)測的問題,提出了一種改進(jìn)的基因表達(dá)式編程算法。該算法具有染色體最優(yōu)狀態(tài)記憶功能,在進(jìn)化過程中可以按條件學(xué)習(xí)自身的歷史經(jīng)驗知識,以加強(qiáng)局部搜索能力和促進(jìn)收斂,同時盡量控制個體的趨同化而保持種群的多樣性。3組不同區(qū)域和不同類型的真實降水?dāng)?shù)據(jù)集的實驗驗證了其可以改善傳統(tǒng)GEP算法后期收斂慢的問題,尋優(yōu)能力更強(qiáng),降水?dāng)?shù)據(jù)擬合和預(yù)測效果均顯著優(yōu)于傳統(tǒng)GEP算法、BP神經(jīng)網(wǎng)絡(luò)和NAR神經(jīng)網(wǎng)絡(luò)等算法。
關(guān)鍵詞:基因表達(dá)式編程;經(jīng)驗共享;時間序列;氣象建模;降水預(yù)測;演化計算;演化建模
大氣系統(tǒng)是個極為復(fù)雜的動態(tài)巨系統(tǒng),具有高維性、多尺度性、復(fù)雜性、開放性、混沌性、非平穩(wěn)性、不確定性和動態(tài)性等特點。傳統(tǒng)上,被主要用于建立預(yù)測模型的常規(guī)統(tǒng)計方法難以精確描述大氣系統(tǒng)的復(fù)雜關(guān)系,因而預(yù)測質(zhì)量較低。近年來,利用先進(jìn)的智能計算和數(shù)據(jù)挖掘方法,構(gòu)建和改進(jìn)氣象預(yù)測的方法與模型,幫助對未知氣象規(guī)律的認(rèn)識和提高氣象預(yù)測能力,已逐漸成為氣象、數(shù)學(xué)和計算機(jī)領(lǐng)域?qū)<液蛯W(xué)者們關(guān)注的熱點,多個相關(guān)國際會議上設(shè)置了相關(guān)的專題和Workshop[1]。
近年來,被眾多學(xué)者應(yīng)用到氣象或災(zāi)害天氣的預(yù)測中的神經(jīng)網(wǎng)絡(luò)方法等智能計算方法[2-9]可有效描述氣象要素間的復(fù)雜關(guān)系,但這些算法結(jié)構(gòu)和參數(shù)難選定、計算量過大而不利于大容量樣本學(xué)習(xí)等自身固有的缺陷,嚴(yán)重降低了其應(yīng)用和發(fā)展的效果。基于大量歷史數(shù)據(jù)進(jìn)行氣象數(shù)據(jù)挖掘與建模預(yù)測是個較有發(fā)展前途的研究和應(yīng)用方向,已吸引了不少的學(xué)者進(jìn)行研究[10-13]。但用傳統(tǒng)數(shù)據(jù)挖掘算法難于避免由于氣象數(shù)據(jù)的多層次特性造成的難以建立準(zhǔn)確模型的缺陷,從而降低了氣象預(yù)報的精度。
基因表達(dá)式編程(gene expression programming, GEP)是借鑒生物遺傳的基因表達(dá)規(guī)律,融合了遺傳算法(GA)和遺傳編程(GP)的優(yōu)點發(fā)展起來的進(jìn)化計算家族中的革命性新成員。GEP不但可以輕易地進(jìn)化多種形態(tài)的復(fù)雜計算程序,構(gòu)建穩(wěn)健而精確、可解釋性較強(qiáng)的計算模型,而且具有很強(qiáng)的問題表達(dá)能力、知識發(fā)現(xiàn)能力和尋優(yōu)能力,可有效進(jìn)行數(shù)據(jù)挖掘,發(fā)現(xiàn)公式、規(guī)則或規(guī)律,模型的最優(yōu)化等[14]。相關(guān)研究表明,GEP能有效克服很多智能計算方法和傳統(tǒng)數(shù)據(jù)挖掘與知識發(fā)現(xiàn)的不足,求解很多復(fù)雜問題表現(xiàn)更出色,可望是一個具有發(fā)展前途的氣象數(shù)據(jù)建模與預(yù)測研究方向。但GEP自身還存在復(fù)雜問題建模的進(jìn)化后期尋優(yōu)緩慢且易陷入局部最優(yōu)的缺陷。針對此問題,本文提出了個體最優(yōu)共享的改進(jìn)GEP算法(best individual shared-based gene expression programming,BIS_GEP),能更好地解決后期尋優(yōu)緩慢和局部最優(yōu)問題,并通過3組真實降水案例的實驗驗證了其性能。
1GEP基本原理概述
GEP的個體(染色體)由單個或者多個基因組成,基因之間可以用函數(shù)符號連接起來。GEP的基因用長度固定的符串來表示,由頭和尾兩部分組成。其中頭部既可以包含函數(shù)符號也可以包含終結(jié)符號,而尾部則只能包含終結(jié)符號。基因中的函數(shù)符號是問題求解過程中的所需要的數(shù)學(xué)函數(shù)和邏輯運(yùn)算等所有候選的函數(shù)和操作符的表示,終結(jié)符通常是問題求解過程所需要的候選變量或常量,其中尾部長度t和頭部長度h之間應(yīng)該滿足式(1)的關(guān)系:
(1)
圖1 表達(dá)式樹Fig.1 The expression tree
GEP的若干個染色體構(gòu)成種群,然后通過個體在種群中不斷進(jìn)化而逐漸逼近問題的解。GEP作為進(jìn)化計算家族的成員,其算法的進(jìn)化過程類似于GA和GP。具體算法過程描述見文獻(xiàn)[14]。
2個體最優(yōu)共享GEP算法
GEP存在進(jìn)化后期尋優(yōu)緩慢且易陷局部最優(yōu)的問題,已經(jīng)引起了一些學(xué)者的注意,并試圖通過控制和調(diào)節(jié)種群結(jié)構(gòu)[15-17]、改進(jìn)和調(diào)節(jié)遺傳操作[18-20]、改變個體編碼結(jié)構(gòu)[21-22]等方式改進(jìn)GEP算法,并取得了一定的成效。本文借鑒粒子群算法進(jìn)化過程中粒子歷史最優(yōu)信息共享的機(jī)制促進(jìn)粒子群算法快速收斂的思想,對GEP進(jìn)行了改進(jìn),提出了個體最優(yōu)共享GEP(BIS_GEP)。
2.1BIS_GEP的基本思想
PSO是模擬鳥群尋找食物過程的動作遷徙和群聚行為的一種啟發(fā)式隨機(jī)搜索的演化計算方法。GEP和PSO同屬仿生演化算法,本質(zhì)上都是基于自然性質(zhì)和行為規(guī)則隨機(jī)搜索解空間尋求問題最優(yōu)解。PSO具有良好的個體最優(yōu)信息共享和全局最優(yōu)信息共享與更新機(jī)制,能充分利用個體自身經(jīng)驗和群體經(jīng)驗來調(diào)整自身的狀態(tài),使其位置與速度的更新具有很好的導(dǎo)向性。故對局部空間最優(yōu)解的逼近能力很強(qiáng),收斂速度快,但同時這種導(dǎo)向性也導(dǎo)致其全局搜索能力不強(qiáng)[23]。相對PSO算法,GEP的各種遺傳操作都缺乏明確的導(dǎo)向性,因此其對空間最優(yōu)解的逼近能力不強(qiáng),但這同時讓GEP算法對空間最優(yōu)解的搜索能力變得很強(qiáng)。經(jīng)典的社會學(xué)理論認(rèn)為,人類在決策過程時,個體學(xué)習(xí)和文化傳遞這兩類信息(即自身的經(jīng)驗和其他人的經(jīng)驗)具有極為關(guān)鍵的作用。對比分析PSO和GEP,GEP在對以往搜索經(jīng)驗的學(xué)習(xí)利用上相對較差,因為GEP算法的個體并不像PSO那樣具有記憶能力,以前的知識隨著種群的改變被破壞。本文認(rèn)為這是導(dǎo)致GEP后期搜索慢且易陷局部最優(yōu)的重要原因。BIS_GEP算法正是借鑒了社會學(xué)理論和PSO的個體經(jīng)驗學(xué)習(xí)優(yōu)勢而設(shè)計的,旨在盡可能保持GEP自身的全局搜索優(yōu)勢,增強(qiáng)局部搜索能力和加快收斂速度。因此,在BIS_GEP設(shè)計上,為每個染色體設(shè)計了最優(yōu)狀態(tài)記憶功能,讓個體在進(jìn)化過程中可以充分學(xué)習(xí)自身的歷史經(jīng)驗知識,以加強(qiáng)局部搜索和促進(jìn)收斂。同時還需控制因過度的個體學(xué)習(xí)歷史經(jīng)驗而引起種群個體的趨同化,盡量保持種群的多樣性,讓種群向全局最優(yōu)移動。為了實現(xiàn)此目標(biāo),需要抑制個體對歷史最佳狀態(tài)的學(xué)習(xí)程度,避免所有個體均無節(jié)制地學(xué)習(xí)歷史最佳狀態(tài)而致個體快速趨同降低了種群的多樣性。為此BIS_GEP將種群劃分為兩個子種群,其中一個子種群的染色體在交叉時按一定的概率與自身歷史最優(yōu)狀態(tài)進(jìn)行交叉操作,不斷迭代進(jìn)化,并每隔給定的step代通過輪盤賭選擇二分之一的個體移到另一個子種群中;而另一個子種群則按常規(guī)的GEP算法過程進(jìn)行進(jìn)化,并每隔給定的step代排擠出適應(yīng)度最差的二分之一個體移到另一子種群,同時接收選自另一子種群的個體,在迭代終止條件達(dá)到時該子種群中的最優(yōu)染色體即為本次尋優(yōu)過程中的最優(yōu)解。BIS_GEP算法基本思想如圖2所示。
圖2 BIS_GEP算法基本思想示意圖Fig.2 The basic algorithm idea of BIS_GEP
2.2BIS_GEP算法過程
根據(jù)上述主要思想,設(shè)計了如圖3所描述的BIS_GEP算法流程圖。
圖3 BIS_GEP算法流程圖Fig.3 The algorithm procedure of BIS_GEP
BIS_GEP在經(jīng)典GEP的基礎(chǔ)上,將種群劃分為兩個等規(guī)模的子種群分別按精英保留策略進(jìn)行進(jìn)化,然后每隔若干代即對兩個相對獨立的子種群進(jìn)行個體選擇與交換,其中的一子種群按常規(guī)的GEP遺傳操作進(jìn)化(詳見文獻(xiàn)[14]),另一子種群則在常規(guī)遺傳操作的基礎(chǔ)上增加按概率進(jìn)行自身歷史最佳狀態(tài)(該染色體的適應(yīng)度值最高時的編碼表示)交叉的操作。選擇個體的標(biāo)準(zhǔn)是按常規(guī)的GEP遺傳操作進(jìn)化的子種群采用輪盤賭選擇取余法選擇個體(選取沒被輪盤賭選擇法選中而排擠出的那一半),另一種群則按輪盤賭選擇法進(jìn)行需移群交換的個體選擇。該算法通過劃分子種群分別進(jìn)行常規(guī)進(jìn)化和外加個體歷史最優(yōu)交叉進(jìn)化,然后隔若干代選擇個體移群交換,既可通過充分學(xué)習(xí)個體自身經(jīng)驗加強(qiáng)局部搜索和促進(jìn)收斂,也能保持種群的多樣性,從而改善算法的尋優(yōu)效果。BIS_GEP算法描述如下:
輸入訓(xùn)練數(shù)據(jù)集T,種群大小Gs、函數(shù)集、終結(jié)符集、基因頭長HL、移群步數(shù)step、各遺傳操作率和終止條件等算法的基本參數(shù)
輸出最優(yōu)函數(shù)模型f及其適應(yīng)度
1)生成初始種群;
2)種群二等分割為G1和G2;
3)種群進(jìn)化過程:
While (終止條件 ≠ true)
G1. CommGeneticOperateInProbability();//子種群1進(jìn)行常規(guī)遺傳操作
G1. divHistoryBestCrossInProbability();
//子種群1進(jìn)行個體最優(yōu)狀態(tài)交叉
G1. CaculateFitness();
//計算子種群1個體適應(yīng)度
G2. CommGeneticOperateInProbability();//子種群2進(jìn)行常規(guī)遺傳操作
G2. CaculateFitness();
//計算子種群2個體適應(yīng)度
If (generation Modulo step ==0)//如果當(dāng)前進(jìn)化代數(shù)是step的倍數(shù)
G1Exchdiv=G1. RoulSelectHalf();
//子種群1進(jìn)行輪盤賭選出一半的個體待交換
G2Exchdiv=G2 - G2. RoulSelectHalf();
//子種群2進(jìn)行輪盤賭排擠出一半個體待交換
G1. Add(G2Exchdiv);
//個體移群交換
G2. Add(G1Exchdiv);
End if
G1. SelectNextPopulation();
//選擇個體構(gòu)成下一代
G2. SelectNextPopulation();
generation ++;
End while
4)輸出結(jié)果。
3基于BIS_GIS的氣象降水建模與預(yù)測
3.1數(shù)據(jù)預(yù)處理
輸入數(shù)據(jù)的質(zhì)量對數(shù)據(jù)挖掘與數(shù)據(jù)建模有著非常重要的影響。氣象數(shù)據(jù)資料在收集過程中受到較多主觀因素(如操作員認(rèn)知程度等)和客觀因素(如儀器設(shè)備的工作狀態(tài)、環(huán)境因素等)的影響,使得氣象數(shù)據(jù)不可避免地包含噪聲,直接進(jìn)行數(shù)據(jù)挖掘和預(yù)測建模必然會導(dǎo)致結(jié)果出現(xiàn)偏差。為了提高模型的有效性和預(yù)測結(jié)果的準(zhǔn)確性,本文在建模前先利用菲波那契(Fibonacci)數(shù)列作為時不變線性濾波器對輸入的氣象數(shù)據(jù)進(jìn)行濾波抑制高頻噪聲,然后再進(jìn)行函數(shù)挖掘與建模預(yù)測。記待測時間序列為{x(t),t=1,2,…,N},根據(jù) Fibonacci 數(shù)列性質(zhì),取線性濾波器H滿足式(2)[24]:
(2)
(3)
式中:K一般取值為滑動窗口大小減1,則該時不變線性濾波器的輸出為
Fib(K)×Xt)/totalWeight
3.2建模方法
用GEP進(jìn)行時間序列的建模和預(yù)測通常是將時間序列建模問題轉(zhuǎn)換成符號回歸問題,挖掘出對給定時間序列數(shù)據(jù)擬合度和對未來預(yù)測精度較高的函數(shù)模型,將用此函數(shù)模型計算未來可能的值。先求時間序列X(t)的M階延遲得到矩陣X,如式(4)所示,矩陣X中的元素與原序列對應(yīng)關(guān)系為Xji=xj+1,然后把矩陣X中的第N-M+1列看作是所求函數(shù)模型的因變量,其余每一列看作所求函數(shù)模型的一個自變量,因而窗口大小為N-M+1,而矩陣X的每一行即為一個樣本數(shù)據(jù),則所求的目標(biāo)函數(shù)模型可記為xN-M=f(x0,x1,…,xN-M)。接下來,GEP根據(jù)輸入樣本,在給定函數(shù)符組成的所有可能函數(shù)表達(dá)空間中尋找擬合樣本數(shù)據(jù)程度較佳的函數(shù)表達(dá)式。
(4)
3.3案例實驗與結(jié)果分析
3.3.1實驗數(shù)據(jù)與方案
本文分別用北京年降水量(1949-2013年,樣本長度65,下文簡稱“北京降水”)、廣西桂平冬季月均降水量(1951-2013年,樣本長度63,下文簡稱“桂平降水”)和UNION CITY旱季的6月份降水量 (1884-2006年,樣本長度123,位于美國新澤西州東北部,下文簡稱“UNION降水”)這3個典型的不同區(qū)域和類型的降水量作為建模預(yù)測對象,檢驗BIS_GEP預(yù)測模型實用效果。 這3組降水案例數(shù)據(jù)的值分布如圖4所示。其中,北京年降水?dāng)?shù)據(jù)逐年變化差異較大,突變點多而尖銳,最大值是最小值的6倍之多,數(shù)據(jù)的分布曲線相當(dāng)復(fù)雜;桂平降水?dāng)?shù)據(jù)盡管最大值是最小值的6倍之多,但其逐年變化曲線比北京年降水?dāng)?shù)據(jù)逐年變化曲線平滑,突變點少;UNION CITY降水?dāng)?shù)據(jù)波動幅度較小,數(shù)據(jù)的分布曲線相對平穩(wěn)。
圖4 實驗案例數(shù)據(jù)的值分布Fig.4 The value distribution of experimental data
本文實驗驗證的主要方案是,先分別用原始GEP算法、GEP改進(jìn)算法ADF_GEP和本文所提BIS_GEP算法對3個降水案例數(shù)據(jù)集進(jìn)行擬合建模,觀察和比較3種GEP算法的收斂過程,驗證BIS_GEP收斂性能改善效果。然后用這3種方法,以及被大氣科學(xué)領(lǐng)域運(yùn)用較多的BP和NAR等神經(jīng)網(wǎng)絡(luò)建模預(yù)測算法分別對3個降水案例數(shù)據(jù)集進(jìn)行建模與預(yù)測,比較分析所得結(jié)果進(jìn)而驗證BIS_GEP的建模預(yù)測性能。
3組實驗均保留序列中最后10%的樣本作為測試樣本,其余樣本為訓(xùn)練樣本,采用逐月/年預(yù)報形式預(yù)測測試樣本的結(jié)果。3組實驗中所用的各算法的主要參數(shù)保持不變,其中,時間延遲系數(shù)都取1,嵌入維數(shù)取5。GEP相關(guān)算法的主要參數(shù)如表1所示,其中的終結(jié)符a,b,c,d,e,…分別代表目標(biāo)函數(shù)模型中的變量X0,X1,…,XN-M-1。本文實驗中的BP神經(jīng)網(wǎng)絡(luò)和NAR神經(jīng)網(wǎng)絡(luò)的均用MATLAB中的神經(jīng)網(wǎng)絡(luò)相關(guān)類構(gòu)建,隱層數(shù)均為20,BP采用的其他主要參數(shù)如下:傳遞函數(shù)為tansig,訓(xùn)練函數(shù)為traingdm, epochs=10 000,lr=0.000 1,mc=0.5;NAR采用的其他主要參數(shù)如下:trainRatio=70/100,
valRatio=15/100,testRatio=15/100。
表1 實驗中的GEP及改進(jìn)算法的主要參數(shù)
3.3.2收斂性驗證實驗與結(jié)果分析
本文首先對BIS_GEP算法的改進(jìn)性能進(jìn)行驗證。分別用3種GEP算法對北京降水?dāng)?shù)據(jù)集、桂平降水?dāng)?shù)據(jù)集和UNION CITY降水?dāng)?shù)據(jù)集進(jìn)行自動建模,模型評價函數(shù)為平均相對誤差。本文為避免因進(jìn)化過程中的初始幾代的適應(yīng)度與目標(biāo)值間的差異過大影響收斂過程曲線圖展示效果,在畫圖時均忽略前5代的收斂過程曲線。桂平降水?dāng)?shù)據(jù)集實驗的進(jìn)化過程(見圖6)的前期適應(yīng)度與中后期的差異較大,本文根據(jù)該收斂過程特點將其進(jìn)化收斂過程圖拆分成5~125代(見圖7(a))和125~2 000代(見圖7(b))兩部分,以便更清晰地展示算法收斂過程的效果。
圖5 北京年降水量建模進(jìn)化收斂過程Fig.5 Convergence process of precipitation modeling of Beijing
圖6 桂平冬季月均降水量建模進(jìn)化收斂過程圖Fig.6 Convergence process of precipitation modeling of Guiping
BIS_GEP、原始GEP和ADF_GEP等對3組不同數(shù)據(jù)集的自動建模的進(jìn)化收斂實驗結(jié)果如圖5~8所示。由圖可知:1)圖5~8均表明了BIS_GEP算法在這3組不同數(shù)據(jù)集的自動建模過程中,無論是10次運(yùn)行結(jié)果的平均值,還是最佳運(yùn)行狀況,BIS_GEP比原始GEP和ADF_GEP均有更好的收斂性能和尋優(yōu)結(jié)果表現(xiàn)。這充分說明了本文提出的改進(jìn)方法的有效性和優(yōu)越性。2)圖5~8中的左邊部分顯示的進(jìn)化過程初期的適應(yīng)度曲線均顯示了在算法進(jìn)化的初期,如圖5顯示的北京降水實驗中的前70代、圖7(a)顯示的桂平降水實驗中的前40代和圖8顯示的UNION CITY降水實驗中的前200代,BIS_GEP、原始GEP和ADF_GEP這3種GEP算法有近似的收斂性能表現(xiàn)。它們幾乎都以極快速度趨于目標(biāo)方向收斂,然后收斂速度逐漸減小,甚至不同程度地進(jìn)入收斂緩慢狀態(tài),陷入局部最優(yōu)。這說明了GEP算法存在著遺傳算法家族常見的不足——前期收斂快,后期收斂緩慢甚至陷入局部最優(yōu)。3)圖5、圖7~8中的右邊的適應(yīng)度曲線均顯示的進(jìn)化過程中后期的BIS_GEP算法的適應(yīng)度迭代進(jìn)化比同階段的原始GEP和ADF_GEP的更頻繁,更能跳出局部最優(yōu)而向全局最優(yōu)方向逼近。這表明了經(jīng)過本文提出的個體最優(yōu)共享改進(jìn)GEP算法可有效改善GEP算法后期收斂緩慢狀態(tài)和易陷入局部最優(yōu)的不足,尋優(yōu)性能比原始GEP和ADF_GEP有顯著的提高。 4)在UNION CITY的降水實驗中,BIS_GEP、原始GEP和ADF_GEP這3種GEP算法在前600代的適應(yīng)度迭代進(jìn)化較北京降水實驗和桂平降水實驗的表現(xiàn)更明顯和更頻繁,且更快速地逼近全局最
優(yōu)。5)從圖5~8可知,UNION CITY降水實驗的平均相對誤差比北京降水實驗和桂平降水實驗的明顯小很多,桂平降水實驗的平均相對誤差也比北京降水實驗的明顯小很多。這說明了GEP算法在進(jìn)行UNION CITY降水自動建模中的效果最好,在北京降水自動建模中的效果較差。
從圖4可看出UNION CITY的降水量數(shù)據(jù)波動范圍相對較小、數(shù)據(jù)分布相對平穩(wěn)、噪聲少,而北京降水?dāng)?shù)據(jù)逐年變化差異較大、突變點多而尖銳、最大值與最小值差距大、數(shù)據(jù)的分布曲線相當(dāng)復(fù)雜。這些數(shù)據(jù)集的特點與4)和5)的情況充分表明了時間序列建模的效果與數(shù)據(jù)集的復(fù)雜程度呈強(qiáng)相關(guān),建模數(shù)據(jù)分布和變化越簡單,自動建模的平均相對誤差越小,建模效果越好。
(a)generation 5~125
(b)generation 125~2 000圖7 桂平冬季月均降水量建模進(jìn)化收斂過程二分解圖Fig.7 Second decomposition for convergence process of precipitation modeling of Guiping
數(shù)據(jù)與指標(biāo)BIS_GEPADF_GEP原始GEPBPNAR擬合預(yù)測擬合預(yù)測擬合預(yù)測擬合預(yù)測擬合預(yù)測北京降水MREF最佳16.6423.7116.8524.9816.8726.7827.4847.1529.1736.77MREF平均17.2224.8517.3427.1317.8029.1728.3851.6430.4237.89桂平降水MREF最佳2.577.162.927.832.958.0415.6930.8610.9719.65MREF平均3.1610.253.2811.513.9012.1817.0832.1712.2921.83UNION降水MREF最佳0.02120.03470.02230.03620.02240.03921.20513.22110.08720.3682MREF平均0.02230.04160.02410.04340.02370.04671.37843.75630.09650.4113
3.3.3建模與預(yù)測效果比較驗證
BIS_GEP算法與其他GEP算法和氣象界常用神經(jīng)算法進(jìn)行了自動建模與預(yù)測比較實驗,取3組降水案例數(shù)據(jù)集的后10%樣本(北京降水和桂平降水的數(shù)據(jù)集均取2008-2013年的樣本,UNION CITY降水?dāng)?shù)據(jù)集取1995-2006年樣本)作為預(yù)測的檢驗樣本,其余樣本為訓(xùn)練樣本。采用逐月/年預(yù)報形式預(yù)測檢驗樣本的結(jié)果,如,用1949-2007年真實的北京降水?dāng)?shù)據(jù)建模所得模型預(yù)測2008年北京降水量,接著繼續(xù)用1949-2008年真實的北京降水?dāng)?shù)據(jù)建模所得模型預(yù)測2009年北京降水量,依次類推。同理,用于北京降水、桂平降水和UNION CITY降水實驗中。比較結(jié)果如表2所示,MREF最佳預(yù)測值是取10獨立運(yùn)行算法所得的10次各個預(yù)測檢驗樣本預(yù)測結(jié)果平均值中的最小者,而MREF平均預(yù)測值是取10獨立運(yùn)行算法所得的10次各個預(yù)測檢驗樣本預(yù)測結(jié)果的綜合平均值。
圖8 UNION CITY每年6月降水量建模進(jìn)化收斂過程Fig.8 Convergence process of precipitation modeling of UNION CITY
從表 3可看出,總體上,在3組不同類型和不同復(fù)雜度的真實降水?dāng)?shù)據(jù)集的實驗中的3種GEP方法的擬合和預(yù)測實驗結(jié)果均比另外兩種神經(jīng)網(wǎng)絡(luò)方法更好。而BIS_GEP算法在實驗上獲得較其他算法更好的數(shù)據(jù)模型擬合性能和預(yù)測性能,模型具有一定的適用性。在UNION CITY降水?dāng)?shù)據(jù)集上的數(shù)據(jù)擬合和預(yù)測的平均相對誤差10次運(yùn)行得的最佳值分別達(dá)到0.021%和0.034%。據(jù)表3數(shù)據(jù)可知,BIS_GEP比實驗中效果第二好的ADF_GEP的相應(yīng)MREF最佳值分別減少了4.93%和5.55%。這比實驗中效果最差的BP的相應(yīng)MREF最佳值分別減少了99.45%和99.89%。即使在逐年變化差異較大、突變點多而尖銳、最大值與最小值差距大、數(shù)據(jù)的分布曲線相當(dāng)復(fù)雜的北京降水?dāng)?shù)據(jù)集上,數(shù)據(jù)擬合和預(yù)測時,BIS_GEP算法的平均相對誤差也都能分別保持在18%和25%以內(nèi)。據(jù)表3數(shù)據(jù)可知BIS_GEP比實驗中效果第二好的ADF_GEP的相應(yīng)MREF最佳值分別減少了1.25%和5.08%。這比實驗中擬合效果最差的NAR和預(yù)測效果最差的BP的相應(yīng)MREF最佳值分別減少了42.94%和49.71%。這些實驗對比結(jié)果充分表明了本文提出的BIS_GEP算法較其他算法在降水序列數(shù)據(jù)自動建模和預(yù)測上有較強(qiáng)優(yōu)勢。
4結(jié)束語
本文提出了一種個體最優(yōu)共享的GEP改進(jìn)算法BIS_GEP,并在3組真實時間序列的自動建模和預(yù)測實驗中,與原始GEP算法、另一經(jīng)典的GEP改進(jìn)算法ADF_GEP,以及BP神經(jīng)網(wǎng)絡(luò)和NAR神經(jīng)網(wǎng)絡(luò)進(jìn)行比較。算法收斂過程實驗對比結(jié)果表明BIS_GEP能相對改善GEP進(jìn)化后期收斂緩慢和容易陷入局部最優(yōu)的缺陷,具有更強(qiáng)的逼近最優(yōu)能力;自動建模能力與預(yù)測能力實驗對比結(jié)果表明,BIS_GEP在3組不同類型的降水?dāng)?shù)據(jù)的數(shù)據(jù)擬合和數(shù)據(jù)預(yù)測實驗中,10次獨立運(yùn)行的最佳平均相對誤差和平均相對誤差均比實驗中的其他GEP算法和神經(jīng)網(wǎng)絡(luò)算法更小,說明其自動建模能力和模型泛化能力均有較強(qiáng)的優(yōu)勢。
對3組不同類型和不同復(fù)雜度的真實降水?dāng)?shù)據(jù)集的擬合和預(yù)測的對比實驗結(jié)果表明,本文BIS_GEP算法對降雨時間序列數(shù)據(jù)的建模和預(yù)測結(jié)果比傳統(tǒng)GEP及其改進(jìn)算法ADF_GEP、常用的BP和NAR神經(jīng)網(wǎng)絡(luò)自動建和預(yù)測算法的效果好,模型具有一定的適用性,同時由于該算法模型對資料要求比較單一, 只需降水歷史數(shù)據(jù), 因而具有廣泛的應(yīng)用價值。
總之,BIS_GEP的改進(jìn)是有效的,并為氣象時間序列預(yù)測建模提供了一種切實可行的方法。下一步工作是進(jìn)一步研究和修改 BIS_GEP算法,并將其應(yīng)用于高維多要素氣象預(yù)測建模的研究和應(yīng)用中。另外,該方法若在實際業(yè)務(wù)中大規(guī)模推廣應(yīng)用還有若干問題有待解決,如海量高維氣象數(shù)據(jù)建模的適應(yīng)性和穩(wěn)定性問題等,都有待進(jìn)一步研究。
參考文獻(xiàn):
[1]彭昱忠, 王謙, 元昌安, 等. 數(shù)據(jù)挖掘技術(shù)在氣象預(yù)報研究中的應(yīng)用[J]. 干旱氣象, 2015, 33(1): 19-27.
PENG Yuzhong, WANG Qian, YUAN Chang’an, et al. Review of research on data mining in application of meteorological forecasting[J]. Journal of arid meteorology, 2015, 33(1): 19-27.
[2]金龍, 吳建生, 林開平, 等. 基于遺傳算法的神經(jīng)網(wǎng)絡(luò)短期氣候預(yù)測模型[J]. 高原氣象, 2005, 24(6): 981-987.
JIN Long, WU Jiansheng, LIN Kaiping, et al. Short-term climate prediction model of neural network based on genetic algorithms[J]. Plateau meteorology, 2005, 24(6): 981-987
. [3]EL-SHAFIE A, JAAFER O, AKRAMI S A. Adaptive neuro-fuzzy inference system based model for rainfall forecasting in Klang River, Malaysia[J]. International journal of the physical sciences, 2011, 6(12): 2875-2885.
[4]GOSAV S, TIRON G. Artificial neural networks built for the rainfall estimation using a concatenated database[J]. Environmental engineering and management journal, 2012, 11(8): 1383-1388.
[5]VENKADESH S, HOOGENBOOM G, POTTER W, et al. A genetic algorithm to refine input data selection for air temperature prediction using artificial neural networks[J]. Applied soft computing, 2013, 13(5): 2253-2260.
[6]RAHMAN M, SAIFUL ISLAM A H M, NADVI S Y M, et al. Comparative study of ANFIS and ARIMA model for weather forecasting in Dhaka[C]//Proceedings of IEEE international conference on informatics, electronics & vision. Dhaka, Bangladesh, 2013: 1-6.
[7]ZHAO Huasheng, JIN Long, HUANG Ying, et al. An objective prediction model for typhoon rainstorm using particle swarm optimization: neural network ensemble[J]. Natural hazards, 2014, 73(2): 427-437.
[8]HE Suhong, FENG Taichen, GONG Yanchun, et al. Predicting extreme rainfall over eastern Asia by using complex networks[J]. Chinese physics B, 2014, 23(5): 059202.
[9]WU Jiansheng, LONG Jin, LIU Mingzhe. Evolving RBF neural networks for rainfall prediction using hybrid particle swarm optimization and genetic algorithm[J]. Neurocomputing, 2015, 148: 136-142.
[10]DHANYA C T, KUMAR D N. Data mining for evolving fuzzy association rules for predicting monsoon rainfall of India[J]. Journal of intelligent systems, 2009, 18(3): 193-210.
[11]TERZI O. Monthly rainfall estimation using data-mining process[J]. Applied computational intelligence and soft computing, 2012, 2012: 698071.
[12]BERNARD E, NAVEAU P, VRAC M, et al. Clustering of maxima: spatial dependencies among heavy rainfall in France[J]. Journal of climate, 2013, 26(20): 7929-7937.
[13]TENG Shaohua, FAN Jihui, ZHU Haibin, et al. A cooperative multi-classifier method for local area meteorological data mining[C]//Proceedings of the 18th IEEE International Conference on Computer Supported Cooperative Work in Design. Hsinchu, Taiwan, China, 2014: 435-440.
[14]FERREIRA C. Gene expression programming: mathematical modeling by artificial intelligence[M]. Portugal: Angra do Heroismo, 2002: 1-15.
[15]胡建軍, 唐常杰, 段磊, 等. 基因表達(dá)式編程初始種群的多樣化策略[J]. 計算機(jī)學(xué)報, 2007, 30(2): 305-310.
HU Jianjun, TANG Changjie, DUAN Lei, et al. The strategy for diversifying initial population of gene expression programming[J]. Chinese journal of computers, 2007, 30(2): 305-310.
[16]李太勇, 唐常杰, 吳江, 等. 基因表達(dá)式編程種群多樣性自適應(yīng)調(diào)控算法[J]. 電子科技大學(xué)學(xué)報, 2010, 39(2): 279-283.
LI Taiyong, TANG Changjie, WU Jiang, et al. Adaptive population diversity tuning algorithm for gene expression programming[J]. Journal of university of electronic science and technology of China, 2010, 39(2): 279-283.
[17]宣士斌, 劉怡光. 基于混合差異度控制的基因表達(dá)式編程[J]. 模式識別與人工智能, 2012, 25(2): 186-194.
XUAN Shibin, LIU Yiguang. GEP evolution algorithm based on control of mixed diversity degree[J]. Pattern recognition & artificial intelligence, 2012, 25(2): 186-194.
[18]TANG Changjie, DUAN Lei, PENG Jing, et al. The strategies to improve performance of function mining by gene expression programming: genetic modifying, overlapped gene, backtracking and adaptive mutation[C]//Proceedings of the 17th Data Engineering Workshop. Ginowan, Japan, 2006: 100-106.
[19]BAUTU E, BAUTU A, LUCHIAN H. AdaGEP-an adaptive gene expression programming algorithm[C]//Proceedings of IEEE International Symposium on Symbolic and Numeric Algorithms for Scientific Computing. Timisoara, Romania, 2007: 403-406.
[20]元昌安, 唐常杰, 左劼, 等. 基于基因表達(dá)式編程的函數(shù)挖掘-收斂性分析與殘差制導(dǎo)進(jìn)化算法[J]. 四川大學(xué)學(xué)報:工程科學(xué)版, 2004, 36(6): 100-105.
YUAN Chang’an, TANG Changjie, ZUO Jie, et al. Function mining based on gene expression programming-convergency analysis and remnant-guided evolution algorithm[J]. Journal of Sichuan university :engineering science edition, 2004, 36(6): 100-105.
[21]RYAN N, HIBLER D. Robust gene expression programming[J]. Procedia computer science, 2011, 6: 165-170.
[22]ZHONG Jinghui, ONG Y S, CAI Wentong. Self-learning gene expression programming[J]. IEEE transactions on evolutionary computation, 2016, 20(1): 65-80.
[23]張鑫源, 胡曉敏, 林盈. 遺傳算法和粒子群優(yōu)化算法的性能對比分析[J]. 計算機(jī)科學(xué)與探索, 2014, 8(1): 90-102.
ZHANG Xinyuan, HU Xiaomin, LIN Ying. Comparisons of genetic algorithm and particle swarm optimization[J].
Journal of frontiers of computer science and technology, 2014, 8(1): 90-102.
[24]陳宇, 唐常杰, 鐘義嘯, 等. 基于基因表達(dá)式編程和時變強(qiáng)度的時間序列預(yù)測[J]. 計算機(jī)科學(xué), 2005, 32(7 Suppl. B): 269-271.
CHEN Yu, TANG Changjie, ZHONG Yixiao, et al. Time series predication based on gene expression programming and time series vibration intensity[J]. Computer science, 2005, 32(7 Suppl. B): 269-271.
彭昱忠,男,1980年生,副教授,主要研究方向為智能計算及數(shù)據(jù)挖掘。主持國家級和省級基金項目4項,發(fā)表學(xué)術(shù)論文21篇。
元昌安,男,1964年生,教授,主要研究方向為數(shù)據(jù)庫與知識工程,先后主持國家級和省級基金項目8項,獲廣西科技進(jìn)步獎5項,發(fā)表學(xué)術(shù)論文58篇。
李潔,女,1980年生,講師,主要研究方向為智能計算及數(shù)據(jù)挖掘,發(fā)表學(xué)術(shù)論文7篇。
中文引用格式:彭昱忠,元昌安,李潔,等.個體最優(yōu)共享GEP算法及其氣象降水?dāng)?shù)據(jù)預(yù)測建模[J]. 智能系統(tǒng)學(xué)報, 2016, 11(3): 401-409.
英文引用格式:PENG Yuzhong, YUAN Changan, LI Jie, et al. Individual optimal sharing GEP algorithm and its application in forecast modeling of meteorological precipitation[J]. CAAI transactions on intelligent systems, 2016,11(3): 401-409.
Individual optimal sharing GEP algorithm and its application in forecast modeling of meteorological precipitation
PENG Yuzhong1,2, YUAN Changan1, LI Jie3, XU Mingtao1, CHEN Binglian1
(1. College of Computer & Information Engineering, Guangxi Normal University, Nanning 530023, China; 2. Key Lab of Beibu Gulf Environment Change and Resource Use of ministry of Education, Guangxi Normal University, Nanning 530001, China; 3.Department of Mathematics and computer science, Guangxi Science and Technology University, Liuzhou 545004,China)
Abstract:Gene expression programming (GEP) is characterized by slow convergence and ease of falling into a local optimum in the later stages of its evolution. Many methods are difficult to model and use to accurately forecast precipitation because of the simultaneous influence of many natural factors. In this paper, we propose an improved GEP algorithm, which has an optimal state memory function, can learn from historical experience in the process of evolution to strengthen the local search ability, and can thus promote convergence and, at the same time, control the convergence of individuals and maintain the diversity of the population. The experimental results of three groups from different regions and different actual precipitation data sets show that the proposed algorithm can improve the slow convergence problem of the traditional GEP algorithm and has better search ability. Experimental results also show that the proposed algorithm's ability to fit and forecast precipitation data is significantly better than that of traditional GEP algorithm, as well as the BP and NAR neural network algorithms.
Keywords:gene expression programming; experience sharing; time series; meteorology modeling; precipitation forecasting; evolutionary computation; evolution modeling
作者簡介:
中圖分類號:TP391
文獻(xiàn)標(biāo)志碼:A
文章編號:1673-4785(2016)03-0401-09
通信作者:李潔. E-mail:lijie980522@163.com.
基金項目:國家自然科學(xué)基金項目(61562008、41575051);廣西科學(xué)研究與技術(shù)開發(fā)計劃項目(1598019-1)、廣西高校科學(xué)技術(shù)研究重點項目(ZD2014083).
收稿日期:2016-03-18.網(wǎng)絡(luò)出版日期:2016-05-13.
DOI:10.11992/tis.2016030
網(wǎng)絡(luò)出版地址:http://www.cnki.net/kcms/detail/23.1538.TP.20160513.0918.010.html