張育斌+魏正英+張磊+張帥+周瑞
摘 要: 針對我國干旱半干旱地區(qū)節(jié)水灌溉中需要動態(tài)調(diào)節(jié)的問題,提出在灌溉決策中考慮非充分灌溉因素,運(yùn)用Jensen乘法模型建立“灌水?收益”的數(shù)學(xué)模型,采用遺傳算法、基于SQP算法和基于有效集算法的fmincon函數(shù)求解模型,以寶雞峽灌區(qū)冬小麥為例,驗(yàn)證所建模型的準(zhǔn)確性及求解方法的可行性,對比計(jì)算結(jié)果發(fā)現(xiàn),基于SQP算法的fmincon函數(shù)運(yùn)算結(jié)果最優(yōu),相對遺傳算法其灌溉收益提高3%,運(yùn)行時間降低60%,穩(wěn)定性優(yōu)異,并使用該算法進(jìn)行了非充分優(yōu)化灌溉下的決策系統(tǒng)設(shè)計(jì)。
關(guān)鍵詞: 非充分灌溉; 序列二次規(guī)劃算法; 決策; 灌水?收益模型
中圖分類號: TN876?34; TP312 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2017)01?0115?04
Abstract: Since the dynamic adjustment is needed by the water?saving irrigation in arid and semi?arid regions, the ″irrigation?income″ mathematical model established by Jensen multiplication model taking into consideration of the deficit irrigation factor in irrigation decision?making is proposed. The genetic algorithm and fmincon function solving model based on SQP algorithm and active set algorithm are used to verify the accuracy of the established model and the feasibility of the solving method by taking the winter wheat in Baoji gorge irrigation district as the example. The contrast calculation results show that the fmincon function based on SQP algorithm has the optimal operation result, its irrigation income is increased by 3% in comparison with the genetic algorithm, operation time is reduced by 60%, and it has excellent stability. The decision?making system under deficit optimization irrigation was designed with the algorithm.
Keywords: deficit irrigation; SQP algorithm; decision?making; irrigation?income model
0 引 言
1970年美國開始了非充分灌溉的試驗(yàn),他們后來進(jìn)行了冬小麥非充分優(yōu)化灌溉試驗(yàn),獲得了良好的試驗(yàn)效果。80年代澳大利亞的科學(xué)家進(jìn)行了桃樹的非充分優(yōu)化灌溉試驗(yàn),并且開發(fā)出一套虧缺條件下的灌溉方法,不僅節(jié)約了灌溉用水,而且還提高了桃樹的產(chǎn)量并改善了桃子的品質(zhì)[1]。
國內(nèi)學(xué)者對非充分優(yōu)化灌溉的研究雖起步較晚,但研究進(jìn)展迅速,尤其在我國西北干旱地區(qū)。文獻(xiàn)[2]使用多維多目標(biāo)模糊優(yōu)選動態(tài)規(guī)劃理論求解非充分優(yōu)化灌溉模型,在非充分灌溉條件下,提高了單位灌溉水的效益。文獻(xiàn)[3]采用改進(jìn)的遺傳算法與多維動態(tài)規(guī)劃模型,建立了非充分優(yōu)化灌溉條件下的灌溉制度,應(yīng)用于三江平原水稻取得了良好的效果。文獻(xiàn)[4]采用PSO及SM?PSO算法求解Jensen模型參數(shù),計(jì)算擬合精度較高。
近年來,一些新技術(shù)和新算法的出現(xiàn)使得非充分優(yōu)化灌溉理論及其工程應(yīng)用的研究呈現(xiàn)出新的發(fā)展態(tài)勢。其中對遺傳算法的應(yīng)用表現(xiàn)的尤為突出,文獻(xiàn)[5?7]均使用遺傳算法解決非充分灌溉條件下的灌溉模型計(jì)算。本文在這些研究的基礎(chǔ)上,研究更有效的算法來求解灌溉模型,進(jìn)一步提高計(jì)算精度,為智能決策提供最優(yōu)方法。
1 灌溉模型建立
2 模型求解
2.1 遺傳算法
遺傳算法是生物行為的計(jì)算機(jī)數(shù)字化模擬中的重要成果之一,它在歷經(jīng)研究和歸納總結(jié)之后發(fā)展形成了遺傳算法的基礎(chǔ)框架[11?12]。其中編碼方法、遺傳操作、適應(yīng)度函數(shù)設(shè)定等技術(shù)是遺傳算法的基本實(shí)現(xiàn)技術(shù)。
2.2 fmincon函數(shù)
Matlab中提供了求解此問題的函數(shù)fmincon[13],用于求解最優(yōu)化問題時,可選的算法有四種:內(nèi)點(diǎn)算法、序列二次規(guī)劃算法(SQP)、有效集算法(Active set)和基于映射牛頓法的置信域算法,Newton?Lagrange方法中提出序列二次規(guī)劃(SQP)算法是處理非線性約束優(yōu)化問題的一種有效方法[14]。有效集方法是基于用等式約束二次規(guī)劃問題[15],認(rèn)為每次迭代均以已知可行點(diǎn)作為起點(diǎn),并將在該點(diǎn)起作用的約束作為等式約束,而對在該點(diǎn)不起作用的約束暫時不予考慮,這樣,就將一般約束的二次規(guī)劃問題轉(zhuǎn)化為有限個僅帶等式約束的二次規(guī)劃問題。
2.3 灌溉模型求解
分析并采用求解此問題的三種方法,為了驗(yàn)證所建模型的準(zhǔn)確性以及求解手段的可行性,應(yīng)用實(shí)測的資料進(jìn)行求解。實(shí)驗(yàn)資料來自于陜西省寶雞峽灌區(qū)某試驗(yàn)田,所測資料為2013年冬小麥六個生育階段的缺水敏感指數(shù)、最大需水值和有效降水值,如表1所示。
下求函數(shù)的最大值,在這里以灌溉水平135 mm,灌溉面積為1公頃(10 000 m2)為例,則函數(shù)方程轉(zhuǎn)化為:
在約束條件(4)下求解最大值問題。
3 灌溉模型的分析
Matlab中提供的上述三種算法均是求解最小值,因此只需在函數(shù)前加上負(fù)號轉(zhuǎn)化為求解函數(shù)的最小值即可。編寫M文件,設(shè)置相應(yīng)的參數(shù),運(yùn)行結(jié)果如表2所示。
由表2預(yù)測收益列可以看出,基于SQP算法的fmincon函數(shù)預(yù)測值最高,其值為9 556元/公頃,大于遺傳算法的9 371元/公頃和基于有效集算法的fmincon函數(shù)的9 498元/公頃。
同時發(fā)現(xiàn)基于SQP算法的fmincon函數(shù)預(yù)測值不僅最高,而且穩(wěn)定。這里所說的SQP算法的穩(wěn)定性是對比遺傳算法的不穩(wěn)定性而言的,借助Matlab平臺分別運(yùn)行這兩種算法計(jì)算該問題100次,計(jì)算出預(yù)測收益,將每一次的運(yùn)行結(jié)果統(tǒng)計(jì)出來繪制成圖,見圖1。
從圖1中可以清晰地看出基于SQP的fmincon函數(shù)的每一次運(yùn)行結(jié)果不變,遺傳算法的不穩(wěn)定性體現(xiàn)的淋漓盡致,導(dǎo)致此現(xiàn)象的原因是遺傳算法屬于隨機(jī)類的算法,不能穩(wěn)定求出最優(yōu)解。對這100次結(jié)果詳細(xì)分析如表3所示。
在100個數(shù)據(jù)中最大值為9 521元/公頃(仍小于基于SQP的fmincon函數(shù)求得的值),最小值為9 305元/公頃,均值為9 333元/公頃,預(yù)測值中9 100~9 300所占比例為21%,預(yù)測值中9 300~9 400所占比例為67%,預(yù)測值中9 400~9 600所占比例為11%,極差為216元/公頃,標(biāo)準(zhǔn)差為62.8元/公頃。
求解此問題,遺傳算法的缺點(diǎn)不僅體現(xiàn)在運(yùn)行結(jié)果的不穩(wěn)定性上,而且其求解的時間遠(yuǎn)大于基于SQP的fmincon函數(shù),如圖2所示,SQP的fmincon函數(shù)運(yùn)行了9步,而遺傳算法運(yùn)行了50步,運(yùn)行時間約為SQP的fmincon函數(shù)的9倍。
從前面的分析中可以看出,基于SQP的fmincon函數(shù)是求解此問題的理想算法,為了全面分析出基于SQP的fmincon函數(shù)在不同灌溉水平下的運(yùn)行結(jié)果,分別建立100~150 mm(以5 mm為步長)灌溉水平下的灌溉收益,灌溉產(chǎn)量和單位灌水量收益這三種情況,結(jié)果如表4所示,它們之間的關(guān)系如圖3~圖5所示。
從圖3~圖5可以看出,隨著灌溉水平的增加,預(yù)測產(chǎn)量和預(yù)測收益逐漸增加,單位灌水量收益逐漸減小,而且變化趨勢呈線性變化(R2>0.98)。
4 灌溉模型的應(yīng)用
運(yùn)用基于SQP的fmincon函數(shù)算法進(jìn)行非充分優(yōu)化灌溉下決策系統(tǒng)的設(shè)計(jì),解決實(shí)際問題,需要調(diào)用Matlab中的優(yōu)化工具包,并進(jìn)行大量參數(shù)的設(shè)置,十分繁瑣。為了便于用戶使用,本文進(jìn)行非充分優(yōu)化灌溉客戶端的設(shè)計(jì),具體指使用VB作為客戶端,在用戶頁面中輸入灌溉水平,點(diǎn)擊計(jì)算按鈕,后臺就可以進(jìn)行運(yùn)算并將運(yùn)行結(jié)果顯示在用戶界面上,實(shí)現(xiàn)此功能需要將VB與Matlab混合編程。
啟動智能灌溉系統(tǒng),輸入用戶名和密碼進(jìn)入主控程序,在非充分灌溉主頁面上的灌溉水平一欄內(nèi)輸入灌溉水平,系統(tǒng)將自動運(yùn)算出冬小麥的每一個生育期的灌溉水平,同時系統(tǒng)將自動運(yùn)算出預(yù)期的產(chǎn)量以及收益,如圖6所示。
5 結(jié) 論
本文針對我國干旱半干旱地區(qū)灌溉決策中考慮非充分灌溉問題,建立了非充分灌溉下“灌水?收益”模型,以遺傳算法和fmincon函數(shù)為主要方法進(jìn)行計(jì)算與結(jié)果分析,并根據(jù)峽灌區(qū)某實(shí)驗(yàn)田的資料進(jìn)行模型的驗(yàn)證,結(jié)果表明,基于SQP算法的fmincon函數(shù)方法是該模型的最優(yōu)求解方法,且運(yùn)行穩(wěn)定、運(yùn)算時間較短。為解決該模型在實(shí)際問題的應(yīng)用價值,采用VB與Matlab混合編程開發(fā)了非充分優(yōu)化下的決策管理系統(tǒng),為大田智能診斷系統(tǒng)提供了良好的技術(shù)平臺,推動我國水利工程向智慧化方向發(fā)展。
參考文獻(xiàn)
[1] 蔡甲冰,劉鈺,雷廷武,等.精量灌溉決策定量指標(biāo)研究現(xiàn)狀與進(jìn)展[J].水科學(xué)進(jìn)展,2004(4):53l?537.
[2] 陳守煜,馬建琴,邱林.多維多目標(biāo)模糊優(yōu)選動態(tài)規(guī)劃及其在農(nóng)業(yè)灌溉中的應(yīng)用[J].水利學(xué)報(bào),2002(4):33?38.
[3] 付強(qiáng),王立坤,門寶輝,等.推求水稻非充分灌溉下優(yōu)化灌溉制度的新方法:基于實(shí)碼加速遺傳算法的多維動態(tài)規(guī)劃法[J].水利學(xué)報(bào),2003(1):123?128.
[4] 張志宇,郄志紅,侯曉宇.PSO及SM?PSO算法在Jensen模型參數(shù)求解中的應(yīng)用[J].水電能源科學(xué),2013,31(7):139?142.
[5] 郄志紅,韓李明,吳鑫淼.基于改進(jìn)NSGA?Ⅱ的作物灌水量與灌溉日期同步優(yōu)化[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2011,42(5):106?110.
[6] 路振廣,孟春紅,王曉麗.基于遺傳算法的冬小麥優(yōu)化灌溉制度研究[J].人民黃河,2009(11):76?78.
[7] 鄭和祥,史海濱,柴建華,等.基于RAGA?DP的飼草料作物非充分灌溉制度優(yōu)化模型[J].農(nóng)業(yè)工程學(xué)報(bào),2007,23(11):65?70.
[8] 龔元石.Penman? Monteith 公式與FAO ?PPP?17Penman修正式計(jì)算參考作物蒸散量的比較[J].北京農(nóng)業(yè)大學(xué)學(xué)報(bào),1995,21(1):68?75.
[9] 劉鈺.參照騰發(fā)量的新定義及計(jì)算方法對比[J].水利學(xué)報(bào),1997(6):27? 33.
[10] 張兵,張建生,黃文生.基于遺傳算法的西北旱區(qū)灌溉效益決策模型研究[J].節(jié)水灌溉,2013(1):61?65.
[11] POWELL M J D. A fast algorithm for nonlinearly constrained optimization calculations [C]// Proceedings of 1978 the 7th Biennial Conference on Numerical Analysis. Dundee: Springer, 1978: 144?157.
[12] HAN S P. A globally convergent method for nonlinear programming [J]. Journal of optimization theory and applications, 1977, 22(3): 297?309.
[13] 李明.詳解Matlab在最優(yōu)化計(jì)算中的應(yīng)用[M].北京:電子工業(yè)出版社,2011:236?244.
[14] 謝政,李建平.非線性最優(yōu)化理論與方法[M].北京:高等教育出版社,2010:292?293.
[15] 石國春.關(guān)于序列二次規(guī)劃(SQP)算法求解非線性規(guī)劃問題的研究[D].蘭州:蘭州大學(xué),2009.