張亞杰,崔東文
(1.云南省玉溪市易門縣水利局,云南 玉溪 651100;2.云南省文山州水務(wù)局,云南 文山 663000)
枯水期江河流量小,水資源供需矛盾突出。提高枯水期月徑流預(yù)報(bào)精度對(duì)于緩解生產(chǎn)生活用水供需矛盾具有重要意義。目前用于月徑流預(yù)報(bào)的方法有傳統(tǒng)人工神經(jīng)網(wǎng)絡(luò)法[1-2]、支持向量機(jī)法[3-5]、長短時(shí)記憶神經(jīng)網(wǎng)絡(luò)法[6]、組合預(yù)測(cè)法等[7]。在國內(nèi)月徑流相關(guān)預(yù)報(bào)研究中,由于支持向量機(jī)(support vector machines,SVM)具有結(jié)構(gòu)簡單、全局理論最優(yōu)、克服維數(shù)災(zāi)等優(yōu)點(diǎn),無疑在枯水期月徑流預(yù)報(bào)研究中應(yīng)用最為廣泛。相關(guān)向量機(jī)(relevance vector machine,RVM)是Micnacl E Tipping[8]于2000年提出的一種與SVM(Support Vector Machine)類似的稀疏概率模型,已在徑流預(yù)報(bào)相關(guān)研究中得到應(yīng)用。與SVM相比,RVM具有以下優(yōu)勢(shì):①同SVM相比,RVM極大地減少核函數(shù)的計(jì)算量,克服了所選核函數(shù)必須滿足Mercer條件的缺點(diǎn);②RVM基于貝葉斯框架構(gòu)建學(xué)習(xí)機(jī),相關(guān)向量數(shù)目遠(yuǎn)少于 SVM中的支持向量數(shù)目,模型相對(duì)簡潔;③RVM自動(dòng)賦值懲罰因子,不存在因懲罰因子設(shè)置不當(dāng)帶來的過學(xué)習(xí)等問題;④與SVM相比,RVM更稀疏,預(yù)報(bào)時(shí)更短,泛化能力更優(yōu)。在徑流預(yù)報(bào)中,雖然RVM具有較好預(yù)報(bào)性能,但RVM“超參數(shù)α”和“核函數(shù)寬度因子d” 2個(gè)關(guān)鍵參數(shù)的科學(xué)選取對(duì)提高RVM預(yù)報(bào)精度十分關(guān)鍵。目前除傳統(tǒng)優(yōu)化方法,如粒子群優(yōu)化算法(PSO)[9-10]、蝙蝠算法(BA)等[11]用于RVM關(guān)鍵參數(shù)優(yōu)化外,一些新型群體智能仿生算法(SIBA),如鯨魚優(yōu)化算法(WOA)[12]、雞群優(yōu)化(CSO)算法[13]、海鷗優(yōu)化算法(SOA)[14]、蝗蟲優(yōu)化算法(GOA)等[8]已償試用于RVM關(guān)鍵參數(shù)優(yōu)化,并取得較好的優(yōu)化應(yīng)用效果。
為提高枯水期月徑流預(yù)報(bào)精度,拓展群體智能仿生算法優(yōu)化RVM關(guān)鍵參數(shù)的應(yīng)用范疇,研究提出一種基于金雕優(yōu)化(Golden Eagle Optimization,GEO)算法與RVM相融合的徑流預(yù)測(cè)方法。基于云南省某水文站67 a的徑流資料,以枯水期11月、12月和次年1—4月月徑流預(yù)報(bào)為例,選取預(yù)報(bào)月之前具有較好相關(guān)性的月徑流作為預(yù)報(bào)影響因子,通過主成分分析(PCA)對(duì)影響因子進(jìn)行降維處理,利用GEO算法優(yōu)化RVM核寬度因子和超參數(shù),建立GEO-RVM月徑流預(yù)報(bào)模型,并構(gòu)建GEO-SVM模型作對(duì)比,通過實(shí)例驗(yàn)證GEO-RVM模型用于枯水期月徑流預(yù)報(bào)的可行性。
GEO算法是Abdolkarim Mohammadi-Balani等于2020年基于金雕狩獵行為而出的一種新穎群智能元啟發(fā)式算法。該算法通過模擬金雕在狩獵過程中智能調(diào)整搜索策略和攻擊策略來捕食獵物,并達(dá)到求解待優(yōu)化問題的目的。GEO算法基于以下假設(shè):①金雕沿著螺旋軌跡進(jìn)行搜索獵物,并沿著直線路徑進(jìn)行攻擊;②金雕在狩獵初期表現(xiàn)出更大的搜索傾向,在狩獵后期表現(xiàn)出更大攻擊傾向;③金雕在飛行的每個(gè)時(shí)刻都保持搜索和攻擊傾向;④金雕同時(shí)搜索其他金雕鎖定的獵物信息[15]。
與其他啟發(fā)式算法相比,GEO算法原理簡潔、實(shí)現(xiàn)簡單、設(shè)置參數(shù)少,而且具有較好的尋優(yōu)精度和全局搜索能力。GEO算法數(shù)學(xué)描述簡述如下[15]。
a)獵物鎖定。GEO算法中,每只金雕都記住它迄今為止所探測(cè)過的最佳獵物位置,且同時(shí)具有攻擊獵物和巡航搜索獵物的傾向。每次迭代中,金雕i隨機(jī)選擇另一只金雕f的獵物,并繞著金雕f迄今為止所獲得的最佳位置進(jìn)行盤旋,金雕i也可以選擇盤旋自己的目標(biāo)獵物。
b)記憶更新。在GEO中,獵物被模擬為金雕群迄今為止發(fā)現(xiàn)的最佳解決方案(待優(yōu)化問題最佳解),每只金雕都能記住迄今為止找到的最佳解決方案。在迭代過程中,每只金雕從金雕群體的記憶中選擇一個(gè)目標(biāo)獵物,然后計(jì)算每只金鷹的攻擊向量和巡航向量,如果新位置優(yōu)于記憶中的先前位置,則將更新記憶。
c)攻擊策略(開發(fā)階段)。攻擊策略可以通過一個(gè)向量來模擬,該向量從金雕當(dāng)前位置開始,到金雕記憶中獵物位置結(jié)束。由于攻擊向量將金雕種群引向最佳獵物位置,因此突出了GEO的開發(fā)階段。金雕i的攻擊向量可以通過式(1)計(jì)算。
(1)
d)巡航策略(勘探階段)。GEO基于攻擊向量計(jì)算巡航向量,巡航向量是圓的切線向量,垂直于攻擊向量。巡航被認(rèn)為是金雕相對(duì)于獵物的線性速度。GEO算法利用式(2)表示n維空間中超平面方程的標(biāo)量形式。
(2)
(3)
e)位置更新。GEO算法中將金雕i第t次迭代步長向量Δxi定義為:
(4)
則第t+1次迭代金雕位置更新如下:
(5)
式中xt+1——第t+1次迭代金雕位置;xt——第t次迭代金雕位置;Δxi——步長向量。
f)勘探到開發(fā)過渡。GEO使用pa和pc從勘探轉(zhuǎn)向開采。該算法從低pa和高pc開始,隨著迭代的進(jìn)行,pa逐漸增加而pc逐漸減小。pa、pc數(shù)學(xué)描述如下:
(6)
(7)
(8)
式中t=(t1,t2,…,tN)T;Φ——N×(N+1)的核函數(shù)矩陣。
(9)
式中α——N+1超參數(shù)向量。
基于貝葉斯公式,后驗(yàn)分布的權(quán)重描述為:
p(ω|t,α,σ2)=(2π)-(N+1)/2
(10)
式中μ=σ-2∑ΦTt;∑=(σ-2ΦTΦ+A)-1;A=diag(α0,α1,…,αN)。
為建立統(tǒng)一的超參數(shù),p(t|α,σ2)定義如下:
(11)
本文利用高斯徑向基核函數(shù)(RBF)作為核函數(shù),即:
(12)
式中d——核函數(shù)寬度因子。
步驟一基于實(shí)例實(shí)測(cè)徑流資料,選取與預(yù)報(bào)月11、12月和次年1—4月具有較好相關(guān)性的月徑流作為預(yù)報(bào)影響因子。參考文獻(xiàn)[16],采用PCA對(duì)預(yù)報(bào)影響因子進(jìn)行降維處理,并合理劃分訓(xùn)練及預(yù)報(bào)樣本,利用GEO算法優(yōu)化RVM超參數(shù)α和核函數(shù)寬度因子d,建立GEO-RVM徑流預(yù)測(cè)模型,利用訓(xùn)練樣本數(shù)據(jù)對(duì)GEO-RVM模型進(jìn)行訓(xùn)練。
步驟二選用訓(xùn)練樣本均方誤差作為優(yōu)化目標(biāo)函數(shù):
(13)
步驟四評(píng)估目標(biāo)函數(shù)適應(yīng)度值,選取并保存具有最佳適應(yīng)度值的金雕位置x*。令當(dāng)前迭代次數(shù)t=1。
步驟六評(píng)估金雕新位置的適應(yīng)度函數(shù),如果當(dāng)前金雕位置的適應(yīng)度優(yōu)于前代金雕位置的適應(yīng)度,則保留當(dāng)前金雕位置為最佳位置;否則保留前代金雕位置為最佳位置。
步驟七令t=t+1。判斷t是否等于T,若是,輸出最佳金雕位置x*,算法結(jié)束;否則重復(fù)步驟五至步驟七。
步驟八輸出最佳金雕位置x*,x*即為RVM超參數(shù)α和核函數(shù)寬度因子d向量。
圖1 GEO優(yōu)化流程
a)數(shù)據(jù)來源及相關(guān)性分析。該實(shí)例水文站系紅河流域?yàn)o江水系盤龍河干流控制站,控制徑流面積3 128 km2,為國家重要水文站和中央報(bào)汛站。本文以該水文站1952—2018年實(shí)測(cè)水文資料為研究對(duì)象,通過計(jì)算預(yù)報(bào)月11、12月,次年1—4月月徑流與之前月月徑流相關(guān)系數(shù)。經(jīng)計(jì)算,11月月徑流與同年8—10月月徑流的相關(guān)系數(shù)分別為0.541、0.444、0.627;12月月徑流與同年4—5、7—11月月徑流的相關(guān)系數(shù)在0.330~0.764;次年1月月徑流與上年1—4、7—12月月徑流的相關(guān)系數(shù)在0.333~0.914;次年2月月徑流與上年2—5、7—12月和次年1月月徑流的相關(guān)系數(shù)在0.321~0.945;次年3月月徑流與上年1—2、4、8—12月和次年1—2月月徑流的相關(guān)系數(shù)在0.328~0.871;次年4月月徑流與上年4、8—12和次年1—3月月徑流的相關(guān)系數(shù)在0.408~0.772。可見,各預(yù)報(bào)月與各相關(guān)影響因子之間均具有一定的相關(guān)性。
b)數(shù)據(jù)降維處理。由前分析可知,對(duì)于11月,預(yù)報(bào)影響因子3個(gè),即3維,維度較低,無需進(jìn)行降維處理;對(duì)于12月、次年1—4月,預(yù)報(bào)影響因子分別為7個(gè)(7維)、10個(gè)(10維)、11個(gè)(11維)、10個(gè)(10維)、9個(gè)(9維),可采用PCA進(jìn)行數(shù)據(jù)降維,以使數(shù)據(jù)樣本簡潔且更具代表性。本文參考文獻(xiàn)[15],利用SPSS軟件對(duì)實(shí)例數(shù)據(jù)進(jìn)行PCA降維處理,經(jīng)處理,12月、次年1月前4個(gè)特征值累計(jì)貢獻(xiàn)率分別為85.34%、87.49%,次年2月前5個(gè)特征值累計(jì)貢獻(xiàn)率為89.20%,次年3月、次年4月前3個(gè)特征值累計(jì)貢獻(xiàn)率分別為85.43%、85.38%。根據(jù)累計(jì)貢獻(xiàn)率大于85%的原則,分別選取前4個(gè)(4維)、4個(gè)(4維)、5個(gè)(5維)、3個(gè)(3維)、3個(gè)(3維)變量代替原7個(gè)(7維)、10個(gè)(10維)、11個(gè)(11維)、10個(gè)(10維)、9個(gè)(9維)變量,并選取前60組數(shù)據(jù)作為訓(xùn)練樣本,后6組數(shù)據(jù)作為預(yù)報(bào)樣本。主成分分析結(jié)果見表1,降維數(shù)據(jù)及原始數(shù)據(jù)限于篇幅從略。
d)預(yù)測(cè)及對(duì)比分析。利用所構(gòu)建的GEO-RVM、GEO-SVM模型對(duì)實(shí)例預(yù)報(bào)月11、12月,次年1—4月月徑流進(jìn)行訓(xùn)練及預(yù)報(bào),并利用絕對(duì)平均相對(duì)誤差MRE、平均絕對(duì)誤差MAE、決定系數(shù)R2對(duì)2種模型性能進(jìn)行評(píng)價(jià)。訓(xùn)練-預(yù)報(bào)相對(duì)誤差見圖2—7,預(yù)測(cè)結(jié)果見表2。
表1 枯水期預(yù)報(bào)月主成分分析結(jié)果
圖2 11月月徑流擬合-預(yù)報(bào)相對(duì)誤差
圖3 12月月徑流擬合-預(yù)報(bào)相對(duì)誤差
圖4 次年1月月徑流擬合-預(yù)報(bào)相對(duì)誤差
圖5 次年2月月徑流擬合-預(yù)報(bào)相對(duì)誤差
圖6 次年3月月徑流擬合-預(yù)報(bào)相對(duì)誤差
圖7 次年4月月徑流擬合-預(yù)報(bào)相對(duì)誤差
表2 枯水期月徑流預(yù)報(bào)結(jié)果及其對(duì)比
依據(jù)表2及圖2—7可以得出以下結(jié)論。
a)GEO-RVM模型對(duì)實(shí)例預(yù)報(bào)月11、12月,次年1—4月月徑流預(yù)報(bào)的絕對(duì)平均相對(duì)誤差MRE分別為8.59%、7.34%、5.97%、6.07%、5.99%、5.04%,平均絕對(duì)誤差MAE分別為1.42、0.90、0.75、0.56、0.47、0.34 m3/s,預(yù)報(bào)精度均優(yōu)于GEO-SVM模型,表明GEO-RVM模型具有較好的預(yù)報(bào)精度和泛化能力;同時(shí)也表明GEO算法能有效優(yōu)化RVM超參數(shù)和核函數(shù)寬度因子,GEO-RVM模型用于枯水期月徑流預(yù)報(bào)是可行的。
b)從決定系數(shù)R2來看,除次年4月外,GEO-RVM模型對(duì)枯水期預(yù)報(bào)月11、12月,次年1—3月擬合-預(yù)報(bào)的決定系數(shù)R2均大于GEO-SVM模型,表明GEO-RVM模型擬合-預(yù)報(bào)的整體效果要優(yōu)于GEO-SVM模型。其中,枯水期12月、次年1年、次年2月擬合-預(yù)報(bào)的決定系數(shù)R2均大于0.92,擬合-預(yù)報(bào)效果優(yōu)于其他月份。從圖1—6也可以看出,GEO-RVM模型對(duì)枯水期12月、次年1年、次年2月擬合-預(yù)報(bào)效果更優(yōu),更接近實(shí)測(cè)值。
c)GEO-RVM模型對(duì)實(shí)例預(yù)報(bào)月11、12月,次年1—4月月徑流預(yù)報(bào)的相對(duì)誤差分別在-12.64%~14.66%、-9.58%~14.01%、-0.69%~13.94%、-8.43%~11.62%、-11.99%~7.66%、-13.40%~5.32%,相對(duì)誤差均小于實(shí)測(cè)值的20%,達(dá)到水文預(yù)報(bào)甲等精度等級(jí)。
介紹一種新型群體智能仿生算法——金雕優(yōu)化(GEO)算法,利用GEO算法優(yōu)化相關(guān)向量機(jī)(RVM)核寬度因子和超參數(shù),建立GEO-RVM模型,并構(gòu)建GEO-SVM模型作對(duì)比。通過云南省某水文站枯水期11、12月和次年1—4月月徑流預(yù)報(bào)為例對(duì)GEO-RVM模型進(jìn)行驗(yàn)證。結(jié)論如下。
a)GEO-RVM模型對(duì)實(shí)例枯水期月徑流預(yù)報(bào)精度優(yōu)于GEO-SVM模型,具有較好的預(yù)報(bào)精度和泛化能力。GEO算法能有效優(yōu)化RVM超參數(shù)和核函數(shù)寬度因子,將GEO-SVM模型用于枯水期月徑流預(yù)報(bào)是可行的。
b)GEO-RVM模型對(duì)實(shí)例枯水期12月、次年1年、次年2月的擬合-預(yù)報(bào)效果更優(yōu),更接近實(shí)測(cè)值。
c)本文介紹的GEO算法及提出的GEO-RVM模型可為徑流預(yù)報(bào)及其他相關(guān)研究提供借鑒。