張麗娜,魯旭濤 ,劉 昊 ,李 靜
(1.中北大學(xué) 信息與通信工程學(xué)院,太原 030051;2.中北大學(xué) 電氣與控制工程學(xué)院,太原 030051)
我國(guó)是一個(gè)農(nóng)業(yè)大國(guó),農(nóng)田占地面積大,水資源作為生命的源泉,關(guān)系到農(nóng)業(yè)的發(fā)展,影響著人民的溫飽問(wèn)題。根據(jù)最新數(shù)據(jù)統(tǒng)計(jì)顯示,2020年我國(guó)的耕地面積可達(dá)到18.65億畝,長(zhǎng)期保護(hù)農(nóng)田面積達(dá)到15.46億畝,高標(biāo)準(zhǔn)的農(nóng)田面積至少要有8億畝并逐步發(fā)展為10億畝。“十二五”期間,我國(guó)的灌溉技術(shù)不斷發(fā)展,農(nóng)田灌溉面積不斷擴(kuò)大,經(jīng)過(guò)改善后新增加了7500萬(wàn)畝灌溉面積。我國(guó)實(shí)施了大量的節(jié)水政策,已經(jīng)取得較大成效,灌溉面積增加了1.2億畝,當(dāng)今農(nóng)業(yè)發(fā)展的關(guān)鍵是必須要有效落實(shí)耕地和灌溉用水措施,對(duì)同作物進(jìn)行合理化的管理。
因此,徐景輝等人提出了基于SOA算法實(shí)現(xiàn)了PID參數(shù)的自動(dòng)優(yōu)化[1]。王磊提出了枚舉法和遺傳算法在農(nóng)田灌溉管道系統(tǒng)優(yōu)化設(shè)計(jì)[2]。安慶杰等人提出了基于改進(jìn)粒子群算法的兩級(jí)渠道水資源優(yōu)化配置。Alonso Campos提出了基于并行多目標(biāo)遺傳算法的灌溉調(diào)度實(shí)時(shí)能量?jī)?yōu)化。Mohammad Ali Asgharzadeh提出了基于HADIS算法的灌溉調(diào)用系統(tǒng)。上述灌溉方法無(wú)法根據(jù)需水量得出灌溉時(shí)間,對(duì)此本文提出一種基于RBF神經(jīng)網(wǎng)絡(luò)模糊控制的灌溉決策系統(tǒng),以山西省忻州地區(qū)種植的玉米利合328號(hào)為例,進(jìn)行研究,相比傳統(tǒng)灌溉方式增加了產(chǎn)量。
為了保證灌溉的高效性和科學(xué)性,就了解作物的需水特性,農(nóng)作物需水量是在作物不受嚴(yán)重的病蟲毒害,正常的土壤狀況下的生長(zhǎng)需水量。影響作物需水特性的條件主要分三大部分:氣象條件,土壤條件,作物自身的特性等。
氣象條件主要是氣溫、風(fēng)速大小、氣壓大小、空氣濕度等。這些因素會(huì)影響作物的蒸騰作用,風(fēng)速會(huì)影響空氣的溫濕度大小,進(jìn)而改變作物的蒸騰量。氣溫越高,空氣的水分越少,蒸騰作用越強(qiáng)。
表1 部分氣象數(shù)據(jù)表
土壤條件主要是土壤的種類、土壤的結(jié)構(gòu)、土壤的吸水性、地下水等。不同的土壤類型和土壤結(jié)構(gòu)會(huì)影響土壤滲透率,影響土壤的吸水性,進(jìn)而影響作物的吸水性。地下水量的大小會(huì)影響土壤的溫濕度。地下水位較高的地方可以適當(dāng)?shù)臏p少灌溉量。
作物特性主要是作物的吸水特性、作物生長(zhǎng)的不同時(shí)期的需水量等。不同種類的作物、不同品種的作物以及不同生長(zhǎng)周期的作物對(duì)水分的需求量不同。耐寒的作物需水量小,濕生的作物需水量相對(duì)較大。幼苗時(shí)期需水量大,成熟時(shí)期需水量小。
本文中控制的農(nóng)田面積為1畝,預(yù)測(cè)的農(nóng)作物種類是內(nèi)蒙古地區(qū)種植的玉米利合328號(hào),該作物畝保苗5 500~6 000株,行距55 cm,株距20.2 cm為最佳生長(zhǎng)環(huán)境。在進(jìn)行算法控制前,需要先根據(jù)氣象條件計(jì)算神經(jīng)網(wǎng)絡(luò)要預(yù)測(cè)的數(shù)據(jù),即利合玉米的需水量,再對(duì)RBF神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。本文利用參考作物蒸發(fā)量的大小來(lái)計(jì)算出作物需水量。
Q實(shí)=KCQ參
(1)
式(1)中,Q實(shí)指實(shí)際生長(zhǎng)過(guò)程中作物的需水量;KC指作物系數(shù);Q參指參考作物需水量。
(2)
式(2)中,Rn指參考作物冠層表面接收的凈輻射;G土壤熱通量;γ指濕度計(jì)常數(shù);u2指離地面2 m高處的風(fēng)速;es指飽和水氣壓;ea指當(dāng)?shù)氐膶?shí)際水氣壓;Δ指平均氣溫時(shí)飽和水氣壓與溫度曲線斜率。
參考2019年7月和8月50天的數(shù)據(jù),計(jì)算出每日作物的需水量大小,部分氣象數(shù)據(jù)如表1所示,計(jì)算結(jié)果如圖1所示。
圖1 作物需水量計(jì)算結(jié)果
模糊系統(tǒng)與模糊神經(jīng)網(wǎng)絡(luò)二者互相聯(lián)系又互相獨(dú)立,模糊系統(tǒng)實(shí)現(xiàn)的結(jié)果就是模糊神經(jīng)網(wǎng)絡(luò),但是模糊神經(jīng)網(wǎng)絡(luò)有自己的特性。將模糊系統(tǒng)和神經(jīng)網(wǎng)絡(luò)結(jié)合起來(lái)可以構(gòu)成模糊神經(jīng)網(wǎng)絡(luò),將RBF網(wǎng)絡(luò)與模糊系統(tǒng)結(jié)合起來(lái)可以構(gòu)成模糊RBF網(wǎng)絡(luò)。
模糊RBF神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)有四層,分別為:輸入層、模糊化層、模糊推理層和輸出層構(gòu)成。具體的網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 模糊RBF神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
模糊RBF網(wǎng)絡(luò)中信號(hào)傳播及各層的功能如下。
第一層:輸入層。
輸入層的節(jié)點(diǎn)與輸入的參數(shù)量之間直接建立聯(lián)系,將輸入量傳送到輸入層。傳輸節(jié)點(diǎn)的輸入和輸出之間的關(guān)系式為:
f1(i)=xi
(3)
第二層:模糊化層,即隸屬函數(shù)層。
本文用高斯函數(shù)作隸屬函數(shù),在模糊化層中,各個(gè)節(jié)點(diǎn)都能進(jìn)行隸屬函數(shù)計(jì)算,在第j個(gè)節(jié)點(diǎn)處:
(4)
(5)
其中:cij和bj分別是第i個(gè)輸入變量的第j個(gè)模糊集合高斯函數(shù)的均值和標(biāo)準(zhǔn)差。
第三層:模糊推理層,即建立規(guī)則層。
該層的各個(gè)節(jié)點(diǎn)可以與模糊化層建立連接,通過(guò)固定的模糊控制規(guī)則組合在一起,輸出相應(yīng)的數(shù)據(jù),輸出的數(shù)據(jù)具有一定的強(qiáng)度,其中的節(jié)點(diǎn)j的輸出結(jié)果是本節(jié)點(diǎn)全部輸入信號(hào)的總乘積,即:
(6)
第四層:輸出層。
各個(gè)節(jié)點(diǎn)收到的輸入信號(hào)的加權(quán)總和即為該節(jié)點(diǎn)的輸出量,即:
(7)
其中:l為輸出層節(jié)點(diǎn)數(shù),W為輸出節(jié)點(diǎn)與第三層各節(jié)點(diǎn)的連接權(quán)矩陣。
采用模糊RBF網(wǎng)絡(luò)逼近對(duì)象,取網(wǎng)絡(luò)結(jié)構(gòu)為輸入層2,模糊化層4,輸出層1,過(guò)程如圖3所示。
圖3 模糊RBF神經(jīng)網(wǎng)絡(luò)逼近
取ym(k)=f4,ym(k)和y(k)分別表示模糊輸出和實(shí)際輸出。模糊的輸入為y(k)和u(k),模糊的輸出為ym(k),則模糊的逼近誤差為:
e(k)=y(k)-ym(k)
(8)
定義如下的目標(biāo)函數(shù),便于調(diào)整函數(shù):
(9)
輸出層權(quán)值的調(diào)節(jié)方式:
(10)
則輸出層的權(quán)值學(xué)習(xí)算法:
w(k)=w(k-1)+Δw(k)+α[w(k-1)-w(k-2)]
(11)
式中,η為學(xué)習(xí)速率,α為動(dòng)量因子,η∈[0,1],α∈[0,1]。
隸屬函數(shù)參數(shù)的調(diào)整方式:
(12)
(13)
其中:
(14)
隸屬函數(shù)參數(shù)的學(xué)習(xí)算法:
cij(k)=cij(k-1)+Δcij(k)+α[cij(k-1)-cij(k-2)]
(15)
bj(k)=bj(k-1)+Δbj(k)+α[bj(k-1)-bj(k-2)]
(16)
氣象條件、土壤條件以及作物特性會(huì)影響到農(nóng)作物的需水特性,而氣象條件中的光照、溫度高低、濕度狀況以及風(fēng)速大小對(duì)作物的需水量影響較大。為了將農(nóng)作物的需水量控制在合理高效的范圍內(nèi),將這四個(gè)參數(shù)作為模糊控制的輸入,而玉米的需水量的大小作為控制的輸出。灌溉策略結(jié)構(gòu)如圖4所示,首先根據(jù)輸入?yún)?shù)計(jì)算出作物的需水量,再參考實(shí)際的土壤含水量計(jì)算出需要灌溉的水量的多少,隨后用模糊控制算法計(jì)算出灌溉這一需水量所用的灌溉時(shí)間,最后通過(guò)控制閥門的狀態(tài)來(lái)控制灌溉。
圖4 灌溉結(jié)構(gòu)圖
神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型設(shè)計(jì)步驟如下。
3.2.1 樣本預(yù)處理
RBF神經(jīng)網(wǎng)絡(luò)要求輸入的參數(shù)量可以實(shí)時(shí)的進(jìn)行采集,并且對(duì)輸出變量的影響較大。輸入的數(shù)據(jù)需要處理成0到1之間的的代表數(shù)據(jù),用來(lái)計(jì)算權(quán)值的大小。具體的預(yù)處理計(jì)算過(guò)程如下:
(17)
式中,x為原樣本;y為預(yù)處理后的樣本;xmin,xmax為原樣本中的最小值,最大值;ymin,ymax為樣本范圍。
3.2.2 神經(jīng)網(wǎng)絡(luò)節(jié)點(diǎn)個(gè)數(shù)確定
RBF神經(jīng)網(wǎng)絡(luò)能夠根據(jù)不同的要求和不同的解決方案設(shè)計(jì)出不同的結(jié)構(gòu),結(jié)構(gòu)使用過(guò)程比較靈活。本文的輸入?yún)?shù)量為光照強(qiáng)度、空氣溫度、空氣濕度以及風(fēng)速大小4個(gè)變量,輸出變量為作物需水量。因此需要確定模糊結(jié)構(gòu)中的模糊化層節(jié)點(diǎn)數(shù)是模糊網(wǎng)絡(luò)結(jié)構(gòu)的重要影響因素。用如下公式確定模糊化層節(jié)點(diǎn)個(gè)數(shù):
(18)
P指隱含層節(jié)點(diǎn)數(shù)目;n指輸入層節(jié)點(diǎn)數(shù)目;m輸出層節(jié)點(diǎn)數(shù)目;a是1~10 之間的調(diào)節(jié)常數(shù)。
對(duì)模糊化層節(jié)點(diǎn)個(gè)數(shù)進(jìn)行假設(shè),將4、5、6、7、8五個(gè)數(shù)值帶入上式進(jìn)行訓(xùn)練計(jì)算,訓(xùn)練時(shí)間和絕對(duì)均方誤差結(jié)果如表2所示。
表2 模糊化層節(jié)點(diǎn)個(gè)數(shù)對(duì)神經(jīng)網(wǎng)絡(luò)訓(xùn)練的影響
根據(jù)計(jì)算結(jié)果可以得出,當(dāng)模糊化層的節(jié)點(diǎn)個(gè)數(shù)為6時(shí),得出的均方誤差最小,計(jì)算結(jié)果更為準(zhǔn)確。故而建立了一個(gè)4-6-6-1的RBF 神經(jīng)網(wǎng)絡(luò)基本結(jié)構(gòu),輸出值就是需要灌溉的水量的預(yù)測(cè)值。
3.2.3 參數(shù)選擇
為了確保本文的真實(shí)可靠性,以內(nèi)蒙古地區(qū)種植的玉米利合328號(hào)為例,適宜在4月25日至5月10日種植在10厘米低溫穩(wěn)定通過(guò)10℃大達(dá)到七天以上,活動(dòng)積溫2200℃。環(huán)境建立參數(shù)。
1)初始值和閾值的選擇:
為了方便計(jì)算,初始值和閾值一般采用(0,1)之間的隨機(jī)數(shù)值。
2)量化因子和比例因子:
在模糊控制器中輸入?yún)?shù)是精確數(shù)值,需要進(jìn)行模糊處理輸入到模糊規(guī)則中,對(duì)應(yīng)的輸出也是模糊值域,需要處理為精確值進(jìn)行輸出控制。故而,要引入量化因子和比例因子對(duì)其進(jìn)行轉(zhuǎn)換控制。
假設(shè)輸入量a1的分量e=[-a,a],模糊論域:
U={-n,-n+1,...,0,...n-1,n}。則量化因子定義為:
(19)
解得,量化因子分別為:
比例因子定義為:
(20)
解得,比例因子為:
kT=257 s
3)期望誤差的選擇:
期望誤差設(shè)置為10-2。
本文用到的控制器是被廣泛使用的Mamdani 型模糊推理控制器。為了測(cè)量準(zhǔn)確,對(duì)土壤中的水分采用多個(gè)傳感器進(jìn)行測(cè)量,然后取加權(quán)平均數(shù)作為最終的參考量。灌溉需水量使用RBF神經(jīng)網(wǎng)絡(luò)進(jìn)行周期性的預(yù)測(cè),周期為5分鐘。但是,當(dāng)最終計(jì)算出的灌溉時(shí)間小于5分鐘時(shí)要等待下一個(gè)預(yù)測(cè)周期,此時(shí)需要停止灌溉。
3.3.1 輸入輸出變量論域
本文的控制器的輸入是灌溉需水量和土壤水分的差值Q和土壤的水分變化率E兩個(gè)變量。輸出量是實(shí)際的灌溉時(shí)間T。Q的差值變化范圍為0~20%;E的變化率范圍為-5%~5%;T的時(shí)間變化范圍為0~30 min。
3.3.2 模糊語(yǔ)言及其量化論域
模糊控制的規(guī)則根據(jù)不同的輸入輸出的級(jí)別來(lái)確定,首先將輸入輸出三個(gè)變量進(jìn)行等級(jí)定義,然后根據(jù)實(shí)際情況排列組合得到模糊控制規(guī)則。本文Q的變化分為八個(gè)等級(jí),從0到7;E的變化分為七個(gè)等級(jí),從-3到3;T的變化分為八個(gè)等級(jí),從0到7。對(duì)應(yīng)的語(yǔ)言如表3所示。
表3 Q、E、T的模糊語(yǔ)言變量
3.3.3 隸屬度函數(shù)
采用三角隸屬函數(shù)將輸入與模糊控制規(guī)則聯(lián)系起來(lái),隸屬函數(shù)的形式會(huì)影響灌溉用水的使用效率,進(jìn)而影響產(chǎn)量。輸入輸出變量的隸屬度函數(shù)結(jié)果如圖5~7所示。
圖5 Q的隸屬度函數(shù)
圖6 E的隸屬度函數(shù)
圖7 T的隸屬度函數(shù)
3.3.4 規(guī)則表
模糊控制主要是通過(guò)設(shè)定好的控制規(guī)則來(lái)實(shí)現(xiàn)的,本文的輸入為八個(gè)和七個(gè)等級(jí),因此共有56個(gè)控制的規(guī)則組合,具體的模糊控制規(guī)則表4所示。
表4 模糊控制規(guī)則表
采用土壤中安裝的傳感器檢測(cè)出土壤含水量,然后用設(shè)計(jì)好的RBF神經(jīng)網(wǎng)絡(luò)計(jì)算出需要灌溉的水量和灌溉的時(shí)間,RBF神經(jīng)網(wǎng)絡(luò)訓(xùn)練誤差如圖8所示。
圖8 訓(xùn)練誤差圖
由圖8可知,誤差值開(kāi)始的時(shí)候下降的梯度較大,隨著訓(xùn)練次數(shù)的增加,下降的速度不斷減少,最終趨于穩(wěn)定。因此,本文的RBF神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型能夠比較穩(wěn)定的實(shí)現(xiàn)灌溉,滿足設(shè)計(jì)的需求。
訓(xùn)練結(jié)束后對(duì)進(jìn)行預(yù)測(cè),橫坐標(biāo)指樣本編號(hào),縱坐標(biāo)指需水量,實(shí)現(xiàn)指實(shí)際檢測(cè)的需水量,虛線指預(yù)測(cè)到的需水量。具體的預(yù)測(cè)結(jié)果如圖9所示。
圖9 農(nóng)作物需水量實(shí)際值和預(yù)測(cè)值分布
由圖可知,預(yù)測(cè)值和實(shí)際值之間的差值較小,即預(yù)測(cè)誤差小,預(yù)測(cè)值滿足實(shí)際需求。
在MATLAB的工具箱中設(shè)置模糊控制器,設(shè)置為雙輸入單輸出的控制器,并將輸入輸出變量的命名進(jìn)行更改,設(shè)計(jì)的控制器結(jié)構(gòu)如圖10所示。
圖10 模糊控制器結(jié)構(gòu)
對(duì)模糊控制器的輸入和輸出函數(shù)的隸屬度進(jìn)行編輯后,建立模糊控制規(guī)則,對(duì)本設(shè)計(jì)的56條控制規(guī)則逐一設(shè)置。模糊控制規(guī)則設(shè)計(jì)窗口如圖11所示。
圖11 模糊控制規(guī)則
模糊控制器建立完成后,設(shè)置x軸為灌溉需水量和土壤水分的差值,y軸為土壤濕度變化率,z軸為計(jì)算的灌溉時(shí)間。實(shí)際的輸出結(jié)果如圖12所示。
圖12 模糊控制結(jié)構(gòu)曲面圖
模糊控制器會(huì)根據(jù)實(shí)際的狀況算出實(shí)際灌溉時(shí)間,輸出結(jié)果如圖13所示。當(dāng)兩個(gè)輸入分別為1.93,1.17時(shí),輸出為3.78,乘以比例因子257 S,計(jì)算出的灌溉時(shí)間為971.46 s。
圖13 模糊控制輸出結(jié)果
本文首先對(duì)作物的需水特性進(jìn)行分析,確定了四個(gè)影響作物因子的函數(shù),作為RBF神經(jīng)網(wǎng)絡(luò)的輸入來(lái)逼近計(jì)算作物的需水量,并以山西省忻州地區(qū)種植的玉米利合328號(hào)為例,建立模糊控制器,根據(jù)不同的環(huán)境參數(shù)計(jì)算出不同的灌溉時(shí)間。并對(duì)RBF神經(jīng)網(wǎng)絡(luò)和模糊控制器進(jìn)行 MATLAB仿真,保證了使用的可行性。最終實(shí)驗(yàn)測(cè)試結(jié)果顯示,在相同的環(huán)境條件下,本設(shè)計(jì)的灌溉控制器可以實(shí)時(shí)控制灌溉時(shí)間,在一小時(shí)的灌溉時(shí)間內(nèi),可以節(jié)約用水量達(dá)到21%,糧食產(chǎn)量每畝同比增加100公斤。