許景輝 劉政光 周宇博
(西北農(nóng)林科技大學(xué)水利與建筑工程學(xué)院, 陜西楊凌 712100)
淡水資源匱乏已成為全球性問題,在中國尤為嚴重。根據(jù)國家統(tǒng)計局的數(shù)據(jù),我國每年農(nóng)業(yè)用水總量約3 600億m3,其中農(nóng)業(yè)灌溉用水占比約90%,但農(nóng)業(yè)水資源利用率只有40%~45%,水資源利用率較低[1]。監(jiān)測作物根系所在位置的土壤含水率不僅可以提高灌溉用水利用率[2],還能保證作物優(yōu)質(zhì)高產(chǎn),對研究作物根系的水分也能起到積極作用[3]。農(nóng)作物根系深度因土質(zhì)不同而存在差異,但大多集中在0~60 cm淺土層。如冬小麥根深可達1.5~2.0 m,但90%的根量分布于0~60 cm表土層內(nèi)[4]。通過表層少量傳感器預(yù)測較深土層的含水率可有效減少設(shè)備投入、實現(xiàn)植株的精準灌溉,這對于改善灌水條件[5]、保護農(nóng)業(yè)生態(tài)、實現(xiàn)智能灌溉具有重要意義。
近幾年人工神經(jīng)網(wǎng)絡(luò)迅速發(fā)展,在解決函數(shù)逼近與數(shù)據(jù)預(yù)測等問題上效果良好。結(jié)合智能算法的優(yōu)化改進型BP神經(jīng)網(wǎng)絡(luò)集合了優(yōu)化算法在BP初始權(quán)值和閾值優(yōu)化上的優(yōu)勢,具有良好的非線性映射能力,在不同行業(yè)中得到了廣泛應(yīng)用。在農(nóng)業(yè)領(lǐng)域,李旭青等[6]將小波變換和BP神經(jīng)網(wǎng)絡(luò)結(jié)合,實現(xiàn)了土壤重金屬含量反演,其效果良好,但步驟繁復(fù)。LIANG等[7]利用遺傳算法(Genetic algorithm,GA)與BP神經(jīng)網(wǎng)絡(luò)結(jié)合,實現(xiàn)了土壤水分的反演,其效果良好,但GA迭代速度較慢。JIA等[8]嘗試利用插值法與BP神經(jīng)網(wǎng)絡(luò)結(jié)合,在土壤金屬污染的空間分布估算中獲得較高的精度,證明了改進型BP網(wǎng)絡(luò)的預(yù)測精度。在工業(yè)領(lǐng)域,張蓓等[9]利用PSO-BP算法對瀝青混合料空隙率進行反演計算,大大提高了計算效率,但PSO算法易陷入局部最優(yōu)的問題較為明顯。謝劭峰等[10]用遺傳算法優(yōu)化BP-GA模型,實現(xiàn)了降水量預(yù)測,顯示出BP-GA模型很好的非線性擬合能力,但算法較復(fù)雜,不易推廣。王甜甜等[11]利用天牛須搜索(Beetle antennae search,BAS)算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò),用BAS-BP模型進行風(fēng)暴潮災(zāi)害預(yù)測,結(jié)果表明,該模型收斂速度快,具有較好的魯棒性和較高的準確度。文獻[12-13]利用BAS-BP模型對深孔加工中鉆削力進行預(yù)測,其訓(xùn)練時間短,結(jié)果準確。以上研究表明,智能算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)具有良好適應(yīng)性和較高的預(yù)測精度。
在這些智能算法中,天牛須搜索算法(BAS算法)具有較高的準確性。該算法基于天牛采食原理,適用于多目標(biāo)函數(shù)優(yōu)化,無需知道函數(shù)具體形式及梯度信息便可實現(xiàn)自動尋優(yōu)[14],且尋優(yōu)速度較快[15-16]。但由于天牛初值的隨機性,該算法在解決高維函數(shù)方面不夠突出,容易陷入局部最優(yōu)[17]。為提高BAS-BP模型的預(yù)測精度,本文對傳統(tǒng)BAS算法進行改進,提出IBAS-BP算法,將算法中單個天牛改進為天牛群,最大程度地弱化“天牛”隨機初值與方向?qū)λ惴ㄔ斐傻挠绊?,從而避免算法陷入局部最?yōu),提高BAS算法尋優(yōu)的準確性,采用PSO-BP、GA-BP和BAS-BP模型與IBAS-BP模型進行對比,探究IBAS-BP模型在冬小麥根系土壤含水率精確預(yù)測方面的能力。
1.1.1IBAS-BP搜索算法
由于BAS算法隨機初值與方向的隨機性易造成算法陷入局部最優(yōu),為進一步提高BAS算法的尋優(yōu)準確性,提出IBAS(Improved beetle antennae search)優(yōu)化算法。利用改進天牛群搜索算法對BP神經(jīng)網(wǎng)絡(luò)進行優(yōu)化,可提高BP神經(jīng)網(wǎng)絡(luò)的預(yù)測精度[19]。具體步驟為:
(1)構(gòu)建k維隨機向量表述種群中每個天牛須的朝向,作歸一化處理,計算式為
(1)
式中 rand(·)——隨機函數(shù)
b——天牛須朝向
BP神經(jīng)網(wǎng)絡(luò)模型中,若輸入層神經(jīng)元個數(shù)為M(本文中為11),輸出層個數(shù)為L(本文為1), 隱含層神經(jīng)元個數(shù)為N,此時模型搜索維度k=MN+NL+N+1。
(2)單只天牛左右須空間坐標(biāo)為
(2)
式中xir——第i只天牛右須在第t次迭代后所在空間位置
xil——第i只天牛左須在第t次迭代后所在空間位置
dit——此天牛的左右須間距
xt——此天牛所在位置的質(zhì)心坐標(biāo)[20]
(3)確定左右須氣味強度
根據(jù)適應(yīng)度函數(shù)fitness可確定左右須的氣味強度,從而迭代更新左右天牛須所在位置
(3)
式中δit——第i只天牛在第t次迭代時所對應(yīng)的步長因子
sing(·)——符號確定函數(shù)
tsim(j)——第j個樣本的輸出值
yj——第j個樣本的實際值
(4)確定步長因子
采用步長因子控制每只天牛的天牛須搜索范圍,為避免搜索區(qū)域過小和局部極小值出現(xiàn),應(yīng)設(shè)置較大初始步長[21]。而為保障搜索的精細化,采用線性遞減權(quán)值來設(shè)置步長,計算式為
δit+1=δite(t=0,1,…,n)
(4)
式中e為步長衰減系數(shù),應(yīng)取[0,1]之間靠近1的數(shù)字,但目前為止,步長因子數(shù)值設(shè)置尚未有完整理論體系指導(dǎo),本文選用0.95。同時,通過多次實驗,確定初始步長δ=3,迭代次數(shù)n=100。
由文獻[21]可知,天牛須算法相較于傳統(tǒng)的PSO、GA等搜索算法,可通過衰減因子與步長設(shè)置,加快迭代,在迭代速度上有著明顯的優(yōu)勢[21],而其收斂速度也遠超過傳統(tǒng)PSO、GA算法。但其固有缺點在于天牛所在初始位置值的隨機性,而通過取代單個天牛,可有效避免這一缺點。
1.1.2最優(yōu)解生成
對天牛群中的每只天牛所在位置進行初始化,其中每個天牛所在初始位置都應(yīng)取[-0.5,0.5]之間隨機數(shù),并將其保存在bestA集中。同時根據(jù)適應(yīng)度函數(shù),記錄此時所有天牛的全局最佳適應(yīng)度,記錄在bestfinessA集中。之后,根據(jù)式(2)對每只天牛所在位置進行迭代更新。每一次更新完成,都應(yīng)根據(jù)式(3)迭代左右須位置,求取對應(yīng)的適應(yīng)度函數(shù)值[22-23]。及時更新bestA集與bestfitnessA集。最后,通過比較兩個集合中整個天牛群的全局最佳適應(yīng)度,得出整個天牛種群的最佳初始位置bestB和種群最佳適應(yīng)度bestfitnessB,即為最優(yōu)解。
不斷重復(fù)上述過程,當(dāng)適應(yīng)度函數(shù)值達到設(shè)定值(本文取0.001)或迭代進行到最大次數(shù)(本文設(shè)定為100),可將此時bestB中的解集認為是訓(xùn)練所得最佳解,即BP神經(jīng)網(wǎng)絡(luò)的最優(yōu)初始權(quán)值和閾值,之后進行二次訓(xùn)練學(xué)習(xí)。具體流程如圖2所示。
實驗于西北農(nóng)林科技大學(xué)教育部旱區(qū)農(nóng)業(yè)水土工程重點實驗室的灌溉試驗站(108°24′E,34°18′N,海拔521 m)進行。選用所測的713組實驗數(shù)據(jù),每組包含風(fēng)速(m/s)、風(fēng)向、氣溫(℃)、相對濕度(%)、露點溫度(℃)、大氣壓力(Pa)、太陽輻射(W/m2)、20 cm土層含水率(%)、30 cm土層含水率(%)、20 cm土壤溫度(℃)、30 cm土壤溫度(℃)共計11個信息。其中,冬小麥根系大多分布在淺層土壤[24-25],選用Acclima-TDR-315型時域反射儀,埋入深度50 cm土壤進行實測,作為預(yù)測數(shù)值對比數(shù)值。選定其中所測606組數(shù)據(jù)作為訓(xùn)練集,107組作為測試集。設(shè)置IBAS算法中e為0.95,δ為3。BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練次數(shù)設(shè)為100,訓(xùn)練目標(biāo)0.001,學(xué)習(xí)速率0.001。
為合理評價改進IBAS-BP模型對于冬小麥根系所在土壤含水率的預(yù)測精度,以相對誤差和決定系數(shù)為評估標(biāo)準。其中相對誤差越小,則樣本擬合效果越好。決定系數(shù)在[0,1]內(nèi)進行變動,數(shù)值越接近于1,表明模型預(yù)測精度越高,效果越好,而數(shù)值越小,越接近0,則說明模型預(yù)測效果越差。
根據(jù)所測數(shù)據(jù),構(gòu)建基于IBAS-BP神經(jīng)網(wǎng)絡(luò)、BAS-BP神經(jīng)網(wǎng)絡(luò)、GA-BP模型[26-27]、PSO-BP模型[28]的4種預(yù)測模型,分別簡稱為IBAS模型、BAS模型、GA模型和PSO模型。各模型對于冬小麥根系深度50 cm含水率的預(yù)測結(jié)果如圖3所示。并根據(jù)相對誤差和決定系數(shù)對IBAS-BP模型預(yù)測精度做出評估。
由圖3a可以看出,粒子群優(yōu)化算法與BP神經(jīng)網(wǎng)絡(luò)組成的PSO模型的預(yù)測值與實際土壤含水率測定值基本吻合,但在含水率小于15.8%和大于16.4%處,模型預(yù)測誤差過大。測試集中,PSO模型的相對誤差為0.006 9,決定系數(shù)R2為0.673 2,表現(xiàn)差于BAS模型,可能與輸入輸出相關(guān)關(guān)系的回歸曲面精度不夠高有關(guān)。由圖3b可知,GA模型具有良好的收斂性[21],但整體擬合效果不佳,預(yù)測值集中在16.1% ~ 16.2%,與實際結(jié)果存在偏差。且當(dāng)土壤含水率小于15.7%時,會出現(xiàn)較大誤差。在測試集中,模型的相對誤差為0.005 7,R2為0.767 7。且遺傳算法步驟復(fù)雜,運算繁多。由圖3c可知,BAS模型的預(yù)測值和實測值基本吻合,但在含水率大于16.4%和小于15.8%的范圍出現(xiàn)誤差。計算可知,BAS模型的相對誤差為0.004 7,決定系數(shù)R2為0.805 9,具有良好的精度和適應(yīng)性,但實驗效果對于初始天牛所在位置依賴過重。由圖3d可知,IBAS模型幾乎與實測數(shù)據(jù)全部吻合,誤差更小,極為接近于實測數(shù)據(jù)。且在測試集中,相對誤差僅為0.004 5,而決定系數(shù)R2為0.840 7,體現(xiàn)了優(yōu)化算法的良好適應(yīng)性與優(yōu)越性。4種模型的評估結(jié)果如表1所示。
表1 不同模型效果對比Tab.1 Comparison of effects of different models
ZHENG等[21]提出,在BAS算法中,可通過調(diào)整步長保證BAS算法的漸近收斂概率為1。據(jù)此可知,IBAS算法的迭代速度和迭代耗時應(yīng)與式(4)中的δ和e的參數(shù)設(shè)置有關(guān)。為進一步提高IBAS-BP算法的估測精度,實現(xiàn)對冬小麥根系所在50 cm處土壤含水率的精準預(yù)測,本文對以上參數(shù)進行調(diào)整。其中e選用0.55~0.99的等差數(shù)列,而δ則選用2~8的等差數(shù)列。驗證可知,當(dāng)e<0.85時,迭代速度并不會受較大影響,而當(dāng)e>0.95時,迭代速度會下降,迭代次數(shù)增多,在此區(qū)段內(nèi),取0.95時,效果最佳。同理,當(dāng)δ<4時,迭代速度加快,而取3時,IBAS算法收斂性最好,速度最快,迭代次數(shù)最少。
研究結(jié)果表明,IBAS-BP算法能通過大量數(shù)據(jù)訓(xùn)練,消除自然條件下的綜合影響因素,提高對于冬小麥淺層根系的土壤含水率預(yù)測精度。而通過調(diào)整單個天牛步長δ以及衰減系數(shù)e,與土壤含水率的預(yù)測精度提升存在較好的相關(guān)性,改進后,其訓(xùn)練集和測試集的建?;貧w決定系數(shù)R2最高分別可達0.841 2和0.840 7。相對誤差也最接近于1,體現(xiàn)了卓越的預(yù)測精度和良好的適應(yīng)性。這為實現(xiàn)冬小麥土壤含水率的快速檢測提供了理論基礎(chǔ)。同時,通過對比4種算法在不同的含水率預(yù)測結(jié)果分析,得出IBAS-BP神經(jīng)網(wǎng)絡(luò)建立的預(yù)測模型最優(yōu),其模型決定系數(shù)R2大于0.8。BAS模型相對IBAS模型較差,但仍優(yōu)于PSO模型和GA模型,GA模型相對前3種模型表現(xiàn)最差。
(1)利用IBAS搜索算法優(yōu)化后的BP神經(jīng)網(wǎng)絡(luò)預(yù)測模型,其預(yù)測精度明顯提高,優(yōu)化后的BP神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值明顯優(yōu)于隨機狀態(tài)下的權(quán)值和閾值,克服了BP神經(jīng)網(wǎng)絡(luò)收斂速度慢、易陷入局部極小值等缺點。
(2)在IBAS-BP模型中,調(diào)整步長和衰減因子等參數(shù)可以提高冬小麥根系含水率的迭代速度。在不同應(yīng)用數(shù)據(jù)集中,可通過參數(shù)調(diào)整來進一步提高模型的適應(yīng)性。
(3)建立的IBAS-BP預(yù)測模型可對50 cm深度冬小麥根系土壤含水率實現(xiàn)準確預(yù)測,這對于進一步提高水資源利用率、節(jié)約農(nóng)業(yè)用水具有參考價值,可為保護灌溉資源、實現(xiàn)農(nóng)業(yè)灌溉系統(tǒng)的自動化和智能化提供借鑒。