馮培存,魏正英,張育斌,張 千,張 磊,賈維兵
(西安交通大學 機械制造系統工程國家重點實驗室,西安 710049)
參考作物蒸散量是計算作物灌水量的重要參數之一,是目前灌水量預測應用最廣泛的一種方式,聯合國糧農組織提出了以FAO-56 P-M模型作為計算ET0的公式發,該公式以能量平衡以及水汽擴散理論為基礎,具有較為充分的理論依據和計算精度[1]。陸林[2]利用非線性主成分分析法(NLPCA)和徑向基(RBF)神經網絡組成的模型(NLPCA-RBF)對番茄蒸散量進行估算,結果表明,與傳統RBF網絡模型相比較,NLPCA-RBF網絡預測模型的計算結果更加準確。張育斌[3]等采用耦合模擬退火優化最小二乘支持向量機算法,參照作物蒸散量預測模型,表明該模型對于大田的灌水量預測有較好效果。周瑞[4]等創建了基于粒子群算法和廣義回歸神經網絡的參考作物蒸散量預測模型,該模型在缺少氣象數據參數的條件下,仍然具有較好的預測效果。達會廣[5]針對溫室甜瓜作物的耗水數據,建立非線性多項式甜瓜耗水量模型和BP神經網絡模型,結果表明,神經網絡方法模擬和預測結果均優于多因素非線性方法。呂天遠[6]通過分析番茄莖直徑和株高對于水肥變化的響應規律,建立了水肥動態調整模型,并且最終建立水肥供應決策模型。
本文提出了思維進化算法優化BP神經網絡的ET0計算模型,以溫室實測數據結合P-M公式作為模型數據的訓練集和測試集,實驗結果表明優化后的BP神經網絡相比普通神經網絡誤差明顯降低,此外,研究了在氣象參數缺失的條件下對預測模型精度的影響。
作物灌水量的確定對于植物的生長有著重要的意義,是灌溉決策中非常重要的一個參數,一方面合理的灌水量可以滿足作物生長的日常需求,另一方面可以實現有限水資源條件下的較優配置,有效減少水資源的浪費。作物需水量確定有一個關鍵的因素是參考作物蒸散量(ET0)的確定,針對不同作物的不同的生長時期,確定相應的作物系數(Kc),將Kc與ET0相乘即得到作物需水量。目前計算參考作物蒸散量主要采用的是FAO-56 Penman-Monteith方法(PM56法),該模型的建立采用的是能量平衡和空氣動力學原理,綜合考慮了多項的氣象參數,對于ET0的計算有著較好的計算精度。但P-M公式設計到的參數較多,在實際的生產應用中存在著獲取完整數據難度大、數據不完整等問題。考慮到溫室環境與室外大田環境的差異,溫室內風速為0,應采用P-M方程在日光溫室中的修正公式:
(1)
式中:ET0i為充分灌溉下第i天的參考蒸散量,mm/d;Δ為飽和蒸氣壓曲線斜率,kPa/℃;Rn為作物冠層凈輻射,MJ/(m2·d);G為土壤熱通量密度,MJ/(m2·d);γ為干濕表常數,kPa/℃;T為地表1.5~2.5 m高度處每日平均氣溫,℃;es為地表1.5~2.5 m高度處平均飽和蒸氣壓,kPa;ea為地表1.5~2.5 m高度處平均實際蒸氣壓,kPa。
上式中參數,不是氣象站直接得到,而是需要利用氣象站采集的原始數據進行計算處理,采集的信息包括日最高氣溫、日最低氣溫、日平均氣溫、日平均相對濕度、有效日照時長以及所在區域的緯度信息和海拔信息。
BP神經網絡具有多層前饋神經網絡,信號向前傳播,誤差反向傳遞,根據預測的誤差實時調整網絡的權值和閾值,進而使得預測值不斷接近期望值。其訓練過程如圖1所示,主要包括以下步驟,首先對網格初始化,確定計算的初始權值和閾值,將樣本數據輸入至模型后,會計算出隱層各神經元的輸入以及輸出,接著計算輸出層神經元的輸入與輸出,獲取計算輸出層和隱層的誤差,根據誤差值,對輸出層進行修正,并且修改隱層的權值和閾值,判斷迭代步數以及誤差值是否滿足設定值,進而決定是否終止訓練。

圖1 BP神經網絡訓練流程圖
由以上步驟的分析,在算法中有兩個關鍵的參數是神經網絡初始的權值和閾值,這兩個值可以決定算法的效率和預測精度,為了更好地確定BP神經網絡中的權值和閾值,故引入思維進化算法對其展開研究。
思維進化算法的核心類似于人類思維的進化過程,是在遺傳算法基礎上衍生出來的新型進化算法,在保留遺傳算法的基礎啊上,提出新的“趨同”和“異化”兩種新的操作算子,通過趨同、異化等操作,不斷迭代使得預測值與期望值逐漸逼近。其基本流程如圖2所示,在獲取樣本數據之后,算法會產生初始種群、優勝子種群以及臨時子種群,之后子種群執行趨同操作,獲取成熟的子群體,之后進行異化操作進而獲取全局最優的個體,將此個體作為訓練BP神經網絡的初始權值和閾值,使得BP神經網絡以更快的速率和精度獲取預測值。

圖2 思維進化算法優化BP神經網絡流程圖
本文研究的數據來源于寧波農科院溫室甜瓜作物一季之內的室內氣象站監測,采集的信息包括日最高氣溫、日最低氣溫、日平均氣溫、日平均相對濕度、有效日照時長,利用以上的信息可以利用修正的P-M公式計算獲得ET0的標準值。此外,還測量了日平均土壤溫度、日平均土壤濕度、日平均CO2濃度、夜平均CO2濃度等85組數據。在算法訓練和驗證時,選取其中70組數據作為訓練數據集用于訓練,其余15組數據作為測試數據及用于模型的測試與驗證。
模型的評價指標主要有均方根誤差(RMSE)、平均絕對誤差(MAE)、模型有效系數(EF)以及自相關系數(R2),并將以上4個指標統一到整體評價指標(Global performance indicator,GPI)來評價模型的適用性,以上指標的計算公式如下:
(2)
(3)
(4)
(5)
(6)

當Ti為RMSE和MSE時αi等于-1,其他參數時為1。RMSE越小,表明模型偏差越小;MAE越小,表明模型精度越好;R2越接近1,表明模型模擬的吻合度越高;EF越接近1,表明模型質量越好,可信度越高。GPI越高,說明模型的總體模擬效果越好。
以修正的溫室P-M公式計算的ET0值作為標準,溫室監測到的氣象參數作為模型的輸入,分別對普通BP神經網絡以及思維進化算法優化后的BP神經網絡進行預測分析,利用前文所述評價指標進行量化對比,得到數據如表1所示。由表1數據可以看出,經過MEA算法優化的BP神經網絡的均方根誤差由0.411 1下降到了0.194 1,平均絕對誤差有0.346 0下降到了0.174 9,模型的有效系數由原來的0.753 5提升到了0.981 7,預測數據和目標值之間的相關系數有0.967 5提升到了0.981 7,以上4個因素的整體評價指標GPI由原來的0.963 9提升到了1.557 8,由此可見,在進行ET0預測時,加入思維進化算法(MEA)對于BP神經網絡的預測精度有著明顯的提升。

表1 BP神經網絡以及MEA-BP神經網絡預測結果
對利用以上兩種模型預測的數據開展相對誤差分析,得到相對誤差變化曲線如圖3所示。由圖3曲線可知,未優化前BP神經網絡的相對誤差在±13.1%以內,優化后最大相對誤差在±7.2%以內,由圖3曲線可以明顯看出,優化后的BP神經網絡相對誤差值明顯減小,且變化幅度較小。經過計算,優化前的BP神經網絡相對誤差絕對值的均值為6.8%,優化后的相對誤差絕對值的均值為3.4%。

圖3 BP神經網絡優化前后相對誤差圖
在農業實際的生產應用實踐中,由于經濟條件、地理因素等諸多方面的影響和限制,通常無法完整獲取準確計算ET0的多項氣象參數,并且在極端天氣條件下也會造成氣象數據的異常變化或者難以實現監測,在氣象數據不完整或者異常的情況下,對作物蒸散量進行準確的預測有著重大的意義。為此,開展不同氣象因子組合下,建立相應的MEA-BP神經網絡模型,分組對模型開展訓練及驗證,分析在不完整氣象信息的情況下對MEA-BP模型預測精度的影響。在對氣象參數組合之前,首先對各氣象因素與標準ET0之間的相關性進行分析,確定各因素對標準ET0的貢獻程度的大小。Matlab中的corrcoef函數可計算多個序列的互相關和自相關,并依據自相關值歸一化。序列表示為列向量,函數計算序列兩兩之間的皮爾遜互相關系數和自相關系數。利用corrcoef函數分別對日最高溫度、日最低溫度、日平均溫度、日平均空氣相對濕度以及有效光照時長這5個因素與ETO標準值開展相關性計算,相關系數及相關程度如表2所示。

表2 各變量與ET0之間相關性分析
由表2數據可以看出 ,對ET0影響最顯著的是有效光照時長,相關系數為0.894 2,相關程度為高度相關。其中日平均溫度以及日最高溫度的相關系數分別為0.721 8和0.695 1,相關程度為顯著相關。影響最小的是日最低溫度,相關系數為0.394 4,相關程度為實相關。基于以上相關性分析,對不同的氣象因子進行組合,分組對模型進行訓練,分析不同氣象因子組合對模型的精度的影響見表3。

表3 不同輸入參數下MEA-BP模型評價表
注:Tmax為日最高溫度,℃;Tmin為日最低溫度,℃;Tave為日平均溫度,℃;Have為日平均空氣相對濕度,%;n為有效光照時長,h。
由表3數據可以看出,隨著模型輸入氣象因子的減少,模型的均方根誤差以及平均絕對誤差均在逐漸增大,當輸入參數由5個減少至3個時,模型的均方根誤差由0.19逐漸增大至0.35,平均絕對誤差由0.17逐漸增大至0.24,可見均方根以及平均絕對誤差的值都在0.35以內,由此可知輸入參數減少至3個時,模型的計算精度依舊較高。輸入參數由5個減少至3個時,模型的有效系數由0.945逐漸減小至0.821,模型的有效性依舊可以得到保證;預測數據與標準值的相關系數有0.98逐漸減小至0.78。當輸入參數個數減小至2個時,均方根誤差基本處于0.5以上,平均絕對誤差在0.4以上,模型的有效系數在0.8以下,模型的整體評價指標GPI由1急速下降至負數。由以上的分析可知,當輸出參數減小至2個時,模型的整體計算精度以及適應性較差。在輸入參數保證3個及以上,同時包含有顯著影響因子有效光照時長n時,該模型的整體計算精度以及整體的實用性較好。
(1)建立了基于思維進化算法優化BP神經網絡的參考作物蒸散量ET0預測模型,利用思維進化散發自動尋優獲取了BP神經網絡預測中的重要參數-權值和閾值,提升了模型運行的效率和精度,提升了模型的穩定性。
(2)分析對比了BP神經網絡優化前模型的均方根誤差、平均絕對誤差、模型有效系數以及自相關系數,結果表明,優化后的BP神經網絡的最大相當誤差有原來的13%下降到了7.2%,平均相對誤差由原來的6.8%下降到了3.4%,模型優化效果明顯。
(3)研究氣象數據缺失情況下模型的預測效果,當模型輸入參數為4個時,平均絕對誤差約為在0.2 mm(預測值約3~6 mm),模型的有效系數和相關系數基本在0.9以上;當模型輸入參數為3個時,平均絕對誤差約為0.25 mm,模型的有效系數和相關系數基本在0.8以上。因此,在輸入參數保證3個及以上,同時包含有顯著影響因子有效光照時長時,該模型的整體計算精度以及整體的實用性較好,可以為作物需水量智能決策提供參考。