劉銀濤,任 超,王俊男,張 炎,何廣煥
(1.桂林理工大學(xué)測(cè)繪地理信息學(xué)院,廣西 桂林 541004; 2.廣西空間信息與測(cè)繪重點(diǎn)實(shí)驗(yàn)室,廣西 桂林 541004; 3.廣西壯族自治區(qū)自然資源遙感院,廣西 南寧 530023; 4.廣西建設(shè)職業(yè)技術(shù)學(xué)院市政與交通學(xué)院,廣西 南寧 530007)
GNSS技術(shù)以全天候、高精度、經(jīng)濟(jì)便利、能夠?qū)崟r(shí)提供三維坐標(biāo)等優(yōu)點(diǎn)被廣泛應(yīng)用于測(cè)量工作中[1]。在實(shí)際工程應(yīng)用中,我國(guó)國(guó)家高程系統(tǒng)采用正常高系統(tǒng),而GNSS技術(shù)提供的是大地高系統(tǒng)。如何快速高效地獲取兩者的高程差,即高程異常值,從而提升大地高向正常高轉(zhuǎn)換的精度,一直是測(cè)繪領(lǐng)域探索和研究的重點(diǎn)[2]。
GNSS高程擬合的方法較多,國(guó)外學(xué)者常用重力模型法解決該問題,但受限于國(guó)內(nèi)高精度重力場(chǎng)模型未完善,無法在工程應(yīng)用中使用。國(guó)內(nèi)學(xué)者通常采用數(shù)學(xué)模型擬合法[3-5]和神經(jīng)網(wǎng)絡(luò)擬合法[6-7]求取高程異常值,如三次樣條擬合法、多項(xiàng)式曲線擬合法、多面函數(shù)擬合法、最小二乘支持向量機(jī)(least squares support vector machine,LSSVM)等[8-11]。面對(duì)復(fù)雜地形區(qū)域時(shí),常規(guī)擬合方法參數(shù)多、收斂速度慢,精度難以滿足實(shí)際工作需求。
BP神經(jīng)網(wǎng)絡(luò)具有多元回歸和多維函數(shù)映射能力,可以最大限度降低模型誤差,但其參數(shù)存在隨機(jī)性,易陷入局部最優(yōu)。本文提出利用爬行動(dòng)物搜索算法(reptile search algorithm,RSA)對(duì)BP神經(jīng)網(wǎng)絡(luò)各層之間的神經(jīng)元權(quán)值和閾值尋優(yōu),利用RSA全局搜索能力強(qiáng)、參數(shù)少、收斂速度快的特點(diǎn)[12],為BP神經(jīng)網(wǎng)絡(luò)尋求最佳參數(shù),進(jìn)一步提高區(qū)域高程異常模型的預(yù)測(cè)精度。
RSA是一種基于自然啟發(fā)的元啟發(fā)式優(yōu)化算法。其靈感來自自然界中鱷魚的包圍機(jī)制、捕獵機(jī)制和社會(huì)行為,即通過高位步走或腹部爬行,以狩獵協(xié)調(diào)和狩獵合作的方式對(duì)獵物進(jìn)行圍捕,利用4種新穎的機(jī)制更新目標(biāo)的位置,可以為復(fù)雜的問題提供更高質(zhì)量的解決方案,得到新的最佳結(jié)果,幫助解決復(fù)雜的現(xiàn)實(shí)問題。與其他算法相比,RSA在優(yōu)化問題中表現(xiàn)出明顯的優(yōu)越性[13]。具體實(shí)現(xiàn)原理如下。
鱷魚在捕食目標(biāo)前,需要預(yù)估目標(biāo)所在的位置,而鱷魚個(gè)體所在位置視為最優(yōu)候選解;當(dāng)目標(biāo)鎖定后,鱷魚群會(huì)根據(jù)目標(biāo)位置和個(gè)體位置之間的關(guān)系進(jìn)行信息的傳遞,其他個(gè)體也會(huì)向目標(biāo)移動(dòng),不斷更新自己的位置。優(yōu)化過程從一組候選解開始進(jìn)行,在每次迭代中獲得的最優(yōu)解視為最佳值,公式為
(1)
式中,X為隨機(jī)生成的一組候選解;i為候選解;j為維度;xi,j為第i個(gè)候選解第j維的位置;N為鱷魚候選解的數(shù)量;n為目標(biāo)的維度大小。X的解算公式為
xi,j=rand×(UB-LB)+LB
(2)
式中,j的取值范圍為[1,n];rand為[0,1]之間的隨機(jī)數(shù);LB和UB分別表示目標(biāo)問題的上下界。
RSA的搜索行為,即鱷魚在圍捕過程中的兩種策略為:高位步走和腹部爬行。該策略要求鱷魚不能接近目標(biāo)獵物,防止目標(biāo)受到干擾,旨在探索性地發(fā)現(xiàn)更廣闊的搜索空間,找到最為密集的區(qū)域,實(shí)現(xiàn)包圍階段向狩獵階段機(jī)制之間的轉(zhuǎn)換。
在總迭代次數(shù)為T的前提下,高位步走策略取決于t≤T/4,腹部行走策略取決于t≤2T/4和t>4/T,包圍階段的位置更新公式為
x(i,j)(t+1)=Bestj(t)-η(i,j)(t)×β-
R(i,j)(t)×rand
(3)
x(i,j)(t+1)=Bestj(t)×x(r1,j)×ES(t)×rand
(4)
式中,xi,j(t+1)表示迭代至t+1時(shí)第i條鱷魚所在j的位置;Bestj(t)表示截至迭代至第t次時(shí)最優(yōu)值的第j維位置;η(i,j)表示第i個(gè)候選解的第j維的狩獵算子(見式(5));β為0.1,即一個(gè)固定的敏感參數(shù),控制迭代過程中包圍階段的探索精度;R(i,j)為縮減函數(shù)(見式(6)),用于減少搜索區(qū)域的值;r1為[1,N]之間均勻分布的隨機(jī)整數(shù),N表示候選解的數(shù)量;x(r1,j)為隨機(jī)位置r1的解;進(jìn)化因子ES(t)表示在整個(gè)迭代次數(shù)中隨機(jī)遞減[-2,2]的一個(gè)概率比(見式(7))。
η(i,j)=Bestj(t)·P(i,j)
(5)
(6)
(7)
式(5)—(7)中,P(i,j)為獲得最佳解決方案的位置和當(dāng)前解位置之間的差異(見式(8));ε為一個(gè)很小的正數(shù);r2為[1,N]之間的一個(gè)隨機(jī)整數(shù);r3為[-1,1]之間的一個(gè)隨機(jī)值。
(8)
(9)
式中,M(xi)為第i個(gè)候選解的平均位置;UB(j)和LB(j)分別為第j維位置的上下界;α為用于控制迭代過程中狩獵合作的搜索精度的一個(gè)敏感參數(shù),其為固定值0.1。
鱷魚在狩獵過程中采用狩獵協(xié)調(diào)與狩獵合作兩種策略。與包圍機(jī)制不同,該策略設(shè)計(jì)不同的強(qiáng)化技術(shù),目的為讓鱷魚更加快速輕易地接近目標(biāo)獵物。在狩獵階段,利用機(jī)制在最優(yōu)解附近強(qiáng)化搜索,增強(qiáng)溝通,實(shí)現(xiàn)近乎最優(yōu)的解決方案。在該階段搜索過程中,狩獵協(xié)調(diào)機(jī)制取決于t≤3T/4和t>2T/4,狩獵合作機(jī)制取決于t≤T和t>3T/4。狩獵階段的位置更新方程
x(i,j)(t+1)=Bestj(t)·P(i,j)(t)·rand
(10)
x(i,j)(t+1)=Bestj(t)-η(i,j)(t)·ε-
R(i,j)(t)·rand
(11)
綜上所述,RSA算法從一組隨機(jī)的候選解開始,重復(fù)上述公式的迭代,根據(jù)兩種行為、4種策略實(shí)現(xiàn)最優(yōu)方案的選取。
BP神經(jīng)網(wǎng)絡(luò)是一種按照誤差逆向傳播算法訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò)。在結(jié)構(gòu)上,BP神經(jīng)網(wǎng)絡(luò)具有輸入層、隱藏層、輸出層;在本質(zhì)上,BP神經(jīng)網(wǎng)絡(luò)以網(wǎng)絡(luò)誤差平方為目標(biāo)函數(shù),采用梯度下降法計(jì)算目標(biāo)函數(shù)的最小值[14]。BP神經(jīng)網(wǎng)絡(luò)所具有的多元回歸預(yù)測(cè)能力、任意復(fù)雜的模式分類能力和優(yōu)良的多維函數(shù)映射能力,解決了單一感知器無法解決的問題,且因其效率高、效果好,成為應(yīng)用最為廣泛的神經(jīng)網(wǎng)絡(luò)模型之一[15]。神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示。其中,x、y、z分別為輸入變量、隱藏層和輸出變量;n、m分別為輸入層和隱藏層神經(jīng)元數(shù);l為輸出目標(biāo)值的維度。
圖1 神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
根據(jù)模型表達(dá),BP神經(jīng)網(wǎng)絡(luò)不同神經(jīng)元相互連接,自適應(yīng)學(xué)習(xí)。正向傳播時(shí),各層神經(jīng)元通過sigmod激活函數(shù)傳遞,當(dāng)神經(jīng)網(wǎng)絡(luò)輸出的真實(shí)值與預(yù)測(cè)值偏差較大時(shí),模型得不到收斂,則需要執(zhí)行反向誤差傳播。反向誤差傳播是以梯度下降的方式逆?zhèn)鬟f,對(duì)各層連接權(quán)值和閾值更新修改,降低輸出值和預(yù)測(cè)值的均方誤差。經(jīng)過反復(fù)傳播,權(quán)值閾值不斷更新,當(dāng)精度滿足要求或迭代達(dá)到一定次數(shù)時(shí),網(wǎng)絡(luò)訓(xùn)練停止。
BP神經(jīng)網(wǎng)絡(luò)在解決復(fù)雜模型問題時(shí),誤差曲面表現(xiàn)為一個(gè)凹凸不平的多維空間曲面[16],在迭代運(yùn)算的過程中,易陷入局部極值,致使算法的收斂不為全局最優(yōu)值,網(wǎng)絡(luò)預(yù)測(cè)的結(jié)果較差。
因此,采用RSA所具有的全局搜索性特點(diǎn),彌補(bǔ)BP神經(jīng)網(wǎng)絡(luò)的不足。網(wǎng)絡(luò)中每條鱷魚都是相互獨(dú)立的個(gè)體,通過狩獵協(xié)調(diào)與狩獵合作的形式自發(fā)覓食,保持算法在全局搜索中的多樣性。同時(shí),以誤差為適應(yīng)度函數(shù),不斷更新鱷魚的位置,實(shí)現(xiàn)優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值的作用。將優(yōu)化后的參數(shù)代入神經(jīng)網(wǎng)絡(luò)模型中訓(xùn)練,從而提高算法的預(yù)測(cè)精度和收斂速度。RSA-BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程如圖2所示。
圖2 RSA-BP神經(jīng)網(wǎng)絡(luò)算法流程
(1)對(duì)采集的高程異常數(shù)據(jù)進(jìn)行初步處理,剔除存在的粗差,保證試驗(yàn)數(shù)據(jù)的有效性和可靠性。確定BP神經(jīng)網(wǎng)絡(luò)輸入層、隱藏層、輸出層的節(jié)點(diǎn)數(shù)。
(2)對(duì)數(shù)據(jù)集進(jìn)行歸一化處理,得到初始化后神經(jīng)網(wǎng)絡(luò)的連接權(quán)值和閾值。
(3)利用訓(xùn)練集的均方誤差作為RSA優(yōu)化神經(jīng)網(wǎng)絡(luò)權(quán)值閾值的適應(yīng)度函數(shù)。
(4)初始化RSA參數(shù),設(shè)置鱷魚種群規(guī)模、迭代次數(shù)及初始位置。
(5)由式(2)構(gòu)建鱷魚捕獵機(jī)制,利用構(gòu)建的適應(yīng)度值函數(shù),確定當(dāng)前最優(yōu)鱷魚個(gè)體所在位置。
(6)利用式(3)、式(4)中高位步走或腹部爬行策略執(zhí)行包圍機(jī)制,不斷更新鱷魚個(gè)體位置。
(7)利用式(10)、式(11)中狩獵協(xié)調(diào)或狩獵合作策略執(zhí)行狩獵機(jī)制,再次更新鱷魚個(gè)體位置;同時(shí)利用更新后鱷魚個(gè)體位置計(jì)算適應(yīng)度值,通過種群的不斷迭代,最終保存鱷魚最優(yōu)個(gè)體位置,完成全局搜索。
(8)迭代結(jié)束后輸出最佳的參數(shù)值,代入BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型中進(jìn)行訓(xùn)練;根據(jù)預(yù)測(cè)結(jié)果的殘差、外符合精度對(duì)高程擬合模型進(jìn)行精度評(píng)定。
為驗(yàn)證RSA-BP神經(jīng)網(wǎng)絡(luò)在高程擬合模型中的適用性,選取兩處不同地貌特征的測(cè)區(qū)進(jìn)行測(cè)試研究。測(cè)區(qū)1為杭州灣跨海大橋,該測(cè)區(qū)大部分為海域,兩岸地勢(shì)平坦,高程異常不會(huì)發(fā)生劇烈變化;測(cè)區(qū)2為我國(guó)地形較為復(fù)雜的西南喀斯特地貌地區(qū),地勢(shì)起伏大,高程異常較為明顯。對(duì)兩測(cè)區(qū)以等精度的GNSS水準(zhǔn)聯(lián)測(cè),設(shè)計(jì)3種不同方案進(jìn)行對(duì)比,從而對(duì)3種模型進(jìn)行精度評(píng)定。
杭州灣跨海大橋全長(zhǎng)約36 km,寬度為33 m,橋段呈西北至東南方向布置,橋梁跨海區(qū)域加密網(wǎng)點(diǎn)呈線形分布[16]。均勻選取32個(gè)聯(lián)測(cè)點(diǎn)作為工作集樣本,用于構(gòu)建擬合模型,12個(gè)聯(lián)測(cè)點(diǎn)作為學(xué)習(xí)集樣本??紤]數(shù)據(jù)的保密性,在不影響擬合效果的前提下,對(duì)坐標(biāo)進(jìn)行處理,聯(lián)測(cè)點(diǎn)的地理分布如圖3所示。對(duì)組合算法參數(shù)進(jìn)行設(shè)置,將鱷魚種群規(guī)模設(shè)置為50只,最大迭代次數(shù)為50,神經(jīng)網(wǎng)絡(luò)輸入變量為2,隱含層為18,輸出變量為1。圖4為RSA算法收斂曲線。
圖3 線形區(qū)域點(diǎn)位分布
圖4 RSA收斂曲線
為了驗(yàn)證RSA-BP神經(jīng)網(wǎng)絡(luò)算法在GNSS高程擬合中的實(shí)用性,使用相同數(shù)據(jù)組,將其與常用的多面函數(shù)法、常規(guī)LSSVM擬合法進(jìn)行對(duì)比分析。為直觀比較3種擬合方法在處理較為平坦的線形區(qū)域時(shí)的穩(wěn)定性與有效性,統(tǒng)計(jì)了預(yù)測(cè)值與真實(shí)值的殘差,對(duì)比如圖5所示。
圖5 不同模型檢查點(diǎn)殘差
由圖5可以看出,RSA-BP神經(jīng)網(wǎng)絡(luò)擬合方法優(yōu)于LSSVM擬合法和傳統(tǒng)多面擬合法。3種算法殘差絕對(duì)值均在4 cm內(nèi)。LSSVM波動(dòng)較大,穩(wěn)定性差;多面函數(shù)擬合結(jié)果波動(dòng)相對(duì)穩(wěn)定,但個(gè)別點(diǎn)擬合結(jié)果較差;RSA-BP擬合方法則表現(xiàn)出更強(qiáng)的穩(wěn)定性,擬合結(jié)果更趨近于真實(shí)值,精度明顯提高。
為了避免偶然情況及精度分析的特殊性,利用3種擬合方法進(jìn)行多次試驗(yàn),選取10組數(shù)據(jù)的外符合精度,對(duì)比分析不同算法的擬合精度,見表1。
表1 精度擬合統(tǒng)計(jì) cm
由3種算法10次精度的平均值可知,RSA-BP神經(jīng)網(wǎng)絡(luò)整體擬合精度更加穩(wěn)定,可靠程度更高。同時(shí),3種擬合方法單次擬合精度均在2 cm內(nèi),RSA-BP相較于LSSVM法,精度提高了36%;相較于多面函數(shù)法,精度提高了35%??梢?RSA-BP對(duì)小范圍線形平坦區(qū)域高程擬合模型精度的提高具有明顯的優(yōu)勢(shì)。
我國(guó)西南喀斯特地貌區(qū)地勢(shì)復(fù)雜,地形起伏大,受重力場(chǎng)影響,該區(qū)域高程異常值較大。為驗(yàn)證RSA-BP神經(jīng)網(wǎng)絡(luò)在地形復(fù)雜區(qū)域的有效性,采用廣西某地區(qū)56個(gè)GNSS水準(zhǔn)聯(lián)測(cè)點(diǎn)進(jìn)行算例分析,均勻選取36個(gè)點(diǎn)作為工作集樣本,20個(gè)點(diǎn)作為學(xué)習(xí)集樣本。聯(lián)測(cè)點(diǎn)位分布如圖6所示。
圖6 面狀區(qū)域點(diǎn)位分布
面狀區(qū)域RSA-BP神經(jīng)網(wǎng)絡(luò)模型各參數(shù)設(shè)置與線形區(qū)域一致。分別構(gòu)建3種算法擬合模型,計(jì)算各算法預(yù)測(cè)值與真實(shí)值的殘差。模型解算精度見表2,檢查點(diǎn)殘差如圖7所示。
表2 面狀區(qū)域精度評(píng)定
圖7 不同模型檢查點(diǎn)殘差
由表2可知,RSA-BP、LSSVM、多面函數(shù)模型的最大殘差分別為2.473、2.698、4.684 cm,外符合精度分別為1.247、1.457、2.002 cm。RSA-BP表現(xiàn)出更好的擬合效果和普適性,較另外兩種模型,擬合精度分別提高14%、38%。
由圖7可以看出,多面函數(shù)殘差峰值波動(dòng)最大,誤差明顯;LSSVM波動(dòng)區(qū)間相對(duì)平緩,但零刻度附近分布?xì)埐铧c(diǎn)位較少;由于使用RSA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值,增強(qiáng)了BP神經(jīng)網(wǎng)絡(luò)的搜索能力,其零刻度附近點(diǎn)位分布較多,曲線趨于平穩(wěn),總體精度高于其余兩種方法,處理復(fù)雜模型表現(xiàn)明顯優(yōu)勢(shì)。
本文研究了基于爬行動(dòng)物搜索算法的高程擬合方法,在地勢(shì)起伏較小的線形區(qū)域,傳統(tǒng)的數(shù)學(xué)模型擬合法和組合算法均能滿足精度要求,而RSA-BP擬合模型具備更高的精度和穩(wěn)定性;在地形復(fù)雜區(qū)域,利用RSA全局快速尋優(yōu)的特性對(duì)BP神經(jīng)網(wǎng)絡(luò)的連接權(quán)值和神經(jīng)元閾值優(yōu)化,建立不同特征的擬合模型,相較于LSSVM和多面擬合方法,精度分別提高14%、38%。
RSA-BP擬合模型在不同地形中均表現(xiàn)出較好的穩(wěn)定性和適用性,且計(jì)算過程簡(jiǎn)單,程序易于實(shí)現(xiàn),可有效避免BP神經(jīng)網(wǎng)絡(luò)收斂速度慢、易陷入極值等問題。對(duì)實(shí)際測(cè)繪工作具有一定的參考價(jià)值。