張瀟瓏
(江西理工大學(xué) 建筑與測(cè)繪工程學(xué)院,江西 贛州 341000)
變形監(jiān)測(cè)是對(duì)變形體上的監(jiān)測(cè)點(diǎn)進(jìn)行測(cè)量,是在確定外力的作用下,變形體的形狀、大小及變化的空間狀態(tài)和時(shí)間特征的變化量。隨著GPS、甚長(zhǎng)基線干涉測(cè)量等高新技術(shù)不斷地被應(yīng)用于變形監(jiān)測(cè)中,變形監(jiān)測(cè)數(shù)據(jù)量越來(lái)越大,及時(shí)有效從大量的數(shù)據(jù)中優(yōu)化關(guān)鍵性的數(shù)據(jù),是數(shù)據(jù)處理方面需解決的難題[1]。因此,在進(jìn)行數(shù)據(jù)處理之前如何更有效地減小隨機(jī)誤差和噪聲是變形監(jiān)測(cè)數(shù)據(jù)處理中一大熱點(diǎn)。
基因表達(dá)式編程(Gene Expression Programming,簡(jiǎn)稱(chēng)GEP)是根據(jù)生物遺傳的基因表達(dá)規(guī)律提出來(lái)的一種新算法,它由葡萄牙學(xué)者Candida Ferreira2000年首次提出。他指出基因表達(dá)式編程的效率比傳統(tǒng)的遺傳算法和遺傳編程高100-60000倍,在許多領(lǐng)域取得了良好的成果[2]?;虮磉_(dá)式編程(GEP)結(jié)合了遺傳算法(GA)和遺傳編程(GP)的優(yōu)點(diǎn),實(shí)現(xiàn)了高效準(zhǔn)確的數(shù)據(jù)挖掘,在各個(gè)領(lǐng)域都得到了應(yīng)用。因此,利用基因表達(dá)式編程的數(shù)據(jù)挖掘的特點(diǎn),旨在有效解決變形監(jiān)測(cè)中數(shù)據(jù)處理問(wèn)題。
基因表達(dá)式的技術(shù)理論包括染色體構(gòu)成、解譯,變異算子,插串操作,適應(yīng)度函數(shù)評(píng)價(jià)等部分[3]。
基因表達(dá)式編程是近十年發(fā)展起來(lái)的一種算法,采用線性串將基因形成染色體組。GEP的基因用線性編碼的符號(hào)串來(lái)表示,由頭部(Head)和尾部(Tail)共同決定。頭部包含有函數(shù)集,也可以含有終點(diǎn)符號(hào),但是尾部只能使用終點(diǎn)符號(hào)。頭部長(zhǎng)度h,尾部長(zhǎng)度t滿足以下函數(shù)關(guān)系:
其中,n是所需變量數(shù)最多的函數(shù)的參數(shù)個(gè)數(shù)(也稱(chēng)為最大操作數(shù))。
由{Q,-,+,/,×,a,b}構(gòu)成的基因,設(shè) n=2,假設(shè)頭部長(zhǎng)度h=15,由(1)得尾部長(zhǎng)度t=15×(2-1)+l=16,那么基因的總長(zhǎng)度為15+16=31?;蚓幋a為:
若將該基因轉(zhuǎn)化成對(duì)應(yīng)的表達(dá)式樹(shù)(Expression Tree),只需要按照從左到右的順序讀取表達(dá)式結(jié)點(diǎn),并按照從上至下的順序構(gòu)成表達(dá)式樹(shù)[4]。
變異在GEP中起到維持種群多樣性的作用,可以發(fā)生在基因內(nèi)的任何置。然而,染色體的結(jié)構(gòu)要保持完整。在基因范圍里,數(shù)字可以變異為0-9中的任意數(shù)字。在基因頭部,任何符號(hào)都可變異成函數(shù)符或終結(jié)符。若發(fā)生在尾部,終點(diǎn)只能夠變異成終結(jié)符。如果把函數(shù)符轉(zhuǎn)換成終結(jié)符,則表達(dá)式樹(shù)的結(jié)構(gòu)也會(huì)發(fā)生相應(yīng)的變化[5]。
GEP中的元素能夠被激活,形成片段基因進(jìn)入染色體中。GEP中有三種插串。分別是:IS變換,RIS變換和基因變換。IS變換組成子串,插入到頭部除第一個(gè)位置以外的任意位置。RIS變換只能插入到基因的根部,只能將函數(shù)符作為變換片段的起始元素?;蜃儞Q是整個(gè)基因換位到染色體的起始位置[6]。
GEP的重要應(yīng)用是符號(hào)回歸和函數(shù)挖掘,眾多的研究和數(shù)學(xué)應(yīng)用表明,需要建立一個(gè)目標(biāo)函數(shù)來(lái)在其范圍內(nèi)擬合樣本數(shù)據(jù),得出優(yōu)良的解。為了解決這個(gè)問(wèn)題GEP在回歸問(wèn)題中,常用的適應(yīng)度函數(shù)有:精度與選擇范圍適應(yīng)度函數(shù),有基于絕對(duì)誤差和相對(duì)誤差兩種形式:
基于絕對(duì)誤差的適應(yīng)度函數(shù)[7]:
基于相對(duì)誤差的適應(yīng)度函數(shù):
其中M是選擇范圍,c(i,j)是染色體個(gè)體i對(duì)于適應(yīng)度樣本j(來(lái)自集合中)的返回值,而Tj是適應(yīng)度樣本j的目標(biāo)值。
步驟1:確定變形監(jiān)測(cè)影響因子。
步驟2:選擇合適的適應(yīng)度函數(shù),這里的適應(yīng)度函數(shù)可參照公式(2),(3)。
步驟3:選擇終結(jié)符T和函數(shù)集合F形成染色體。終止符為 T={x,y},函數(shù)集合 F={+ ,- ,* ,/,S,C,L,E,Q}。其中,C表示余弦cos,S表示正弦sin,E表示指數(shù)e,L表示對(duì)數(shù)ln,Q 表示開(kāi)平方,x,y為變量。
步驟4:選擇表達(dá)式樹(shù)的連接函數(shù),構(gòu)成染色體,將其各個(gè)部分的子樹(shù)連接成一個(gè)部分。
步驟5:選擇并確定遺傳算子,得到新的種群[8-10]。
本文以某建筑的沉降為例,對(duì)本建筑物的變形監(jiān)測(cè)總共為20期。用前面15期的變形監(jiān)測(cè)數(shù)據(jù)作為觀測(cè)值的預(yù)測(cè)模型,后面5期的數(shù)據(jù)作為GEP預(yù)測(cè)值處理[11]。最后將結(jié)果與傳統(tǒng)預(yù)測(cè)值作比較,來(lái)證實(shí)基因表達(dá)式編程方法精確度較高。
模型參數(shù)如表1所示[11]。
表1 遺傳算子參數(shù)設(shè)計(jì)
遺傳算子 參數(shù)單點(diǎn)重組0.4兩點(diǎn)重組0.3基因重組0.1基因變換0.1
通過(guò)基因表達(dá)式算得1000次得到函數(shù)關(guān)系式如下[12]:
將變形監(jiān)測(cè)觀測(cè)數(shù)據(jù)通過(guò)matlab軟件處理,處理后得到每期新的數(shù)據(jù)值,將總共20期數(shù)據(jù)用于預(yù)報(bào)和檢驗(yàn),原始觀測(cè)值與去噪后數(shù)據(jù)對(duì)比如表2所示。
表2 原始觀測(cè)值與傳統(tǒng)預(yù)測(cè)值
圖1 原始觀測(cè)值與傳統(tǒng)預(yù)測(cè)值
由圖1可以看出,原始觀測(cè)值和傳統(tǒng)預(yù)測(cè)值的曲線幾乎相吻合,可得出結(jié)論:傳統(tǒng)預(yù)測(cè)值對(duì)隨機(jī)誤差的減少并不大,下面來(lái)分析GEP預(yù)測(cè)值對(duì)數(shù)據(jù)的處理。
將原始觀測(cè)數(shù)值代入公式(5),求出本文GEP預(yù)測(cè)的精度及結(jié)果,如表3所示。由傳統(tǒng)預(yù)測(cè)值和基因表達(dá)式預(yù)測(cè)值對(duì)比可知,原始觀測(cè)值由于受到各種因素的干擾,用傳統(tǒng)方法預(yù)測(cè)精度較低,通過(guò)GEP預(yù)測(cè)精度較高。圖2中可以看出,GEP預(yù)測(cè)值消除了曲線尖峰點(diǎn),有效的減弱噪聲和隨機(jī)誤差,使曲線變得光滑。
表3 模型預(yù)測(cè)精度及結(jié)果
圖2 傳統(tǒng)預(yù)測(cè)值與GEP預(yù)測(cè)值對(duì)比
為了更進(jìn)一步說(shuō)明問(wèn)題,比較傳統(tǒng)預(yù)測(cè)值和GEP預(yù)測(cè)值,見(jiàn)圖1和圖2。由圖可知,通過(guò)基因表達(dá)式得到的數(shù)據(jù)處理結(jié)果更平穩(wěn),光滑,精度較高。
針對(duì)傳統(tǒng)變形監(jiān)測(cè)過(guò)程中數(shù)據(jù)處理的困難和不足,利用GEP強(qiáng)大的函數(shù)挖掘功能,根據(jù)提供的實(shí)驗(yàn)數(shù)據(jù),得到準(zhǔn)確的函數(shù)關(guān)系式,省去了確定變量和建模的過(guò)程。利用GEP對(duì)變形監(jiān)測(cè)數(shù)據(jù)處理的實(shí)驗(yàn)分析,證實(shí)了GEP在變形監(jiān)測(cè)數(shù)據(jù)處理方面具有一定的優(yōu)勢(shì)。
[1]侯建國(guó),王騰軍等.變形監(jiān)測(cè)理論與應(yīng)用[M].北京;測(cè)繪出版社,2008.
[2]元昌安,彭昱忠等.基因表達(dá)式編程算法原理與應(yīng)用[M].北京:科學(xué)出版社,2010.
[3]曾雪,胡建華,段磊.基于基因表達(dá)式編程的話務(wù)量預(yù)測(cè)方法[J].計(jì)算機(jī)仿真,2008(7):170-173.
[4]吳勇.基因表達(dá)式編程算法及應(yīng)用研究[D].武漢;武漢理工大學(xué),2008.
[5]Zuo J,Tang CJ,LIc,et a1.Time Series Prediction based on Gene Expression Programming[C]//International Conference for web Information Age2004.Lecture Notes In Computer Science,2004.
[6]涂艷瓊.基因表達(dá)式編程在函數(shù)挖掘中的應(yīng)用研究[J].江西理工大學(xué)學(xué)報(bào),2008,29(3):65-68.
[7]Ferreira C.Gene Expression Programming in Problem-Solving[C]//Invited tutorial of the 6thonline world Conference on soft Computing in Industrial Applications,2001.
[8]萬(wàn)程輝,歐陽(yáng)平.大壩變形監(jiān)測(cè)數(shù)據(jù)的小波分析處理方法[J].北京測(cè)繪,2010,1:32-35
[9]袁昌茂,文鴻雁.變形監(jiān)測(cè)數(shù)據(jù)處理的小波去噪方法[J].地理空間信息,2009,7(4):136-138.
[10]張勤,蔣廷臣.小波變換在變形監(jiān)測(cè)中的應(yīng)用研究[J].測(cè)繪工程,2005(1):8-10.
[11]吳兆福,高飛,陶庭葉.小波變換后的噪聲信息在大壩變形監(jiān)測(cè)精度評(píng)定中的應(yīng)用[J].地球科學(xué)進(jìn)展,2008,23(6):590-593.
[12]黃曉冬,唐常杰.基于基因表達(dá)式編程的函數(shù)關(guān)系發(fā)現(xiàn)方法[J].計(jì)算機(jī)科學(xué),2003,30(增刊):278-282.