謝秋菊 馬超凡 王圣超 包 軍 劉洪貴 于海明
(1.東北農(nóng)業(yè)大學電氣與信息學院, 哈爾濱 150030; 2.東北農(nóng)業(yè)大學動物科技學院, 哈爾濱 150030;3.農(nóng)業(yè)農(nóng)村部生豬養(yǎng)殖設施工程重點實驗室, 哈爾濱 150030;4.教育部北方寒區(qū)智能化繁育與養(yǎng)殖工程研究中心, 哈爾濱 150030)
豬舍空氣質(zhì)量是影響生豬呼吸道健康的關(guān)鍵因素,是豬舍環(huán)境控制關(guān)注的熱點之一。在生豬養(yǎng)殖過程中,豬呼吸產(chǎn)生的CO2、豬糞尿等排泄物和飼料殘渣分解產(chǎn)生的NH3、H2S、CH4等有害氣體對豬的生長、繁殖、健康造成極大危害。其中NH3與CO2的氣體濃度備受關(guān)注。因為NH3是一種無色具有刺激氣味的有害氣體,不同濃度的NH3會對豬的呼吸系統(tǒng)、黏膜等造成不同程度的損傷,并且NH3排放還會造成周圍環(huán)境污染[1];豬舍中的CO2濃度是衡量豬舍內(nèi)空氣質(zhì)量狀況的重要標志,它主要來自于豬的呼吸,舍內(nèi)CO2濃度過高不僅會造成豬頭昏和生產(chǎn)性能下降,更有可能對豬造成生命威脅[2]。因此,對豬舍中NH3和CO2這兩種氣體濃度進行監(jiān)測與控制,是實現(xiàn)豬舍環(huán)境控制的重要任務。通過大量的現(xiàn)場實驗得出,在豬舍內(nèi)進行一系列控制,例如開啟風機1 h,舍內(nèi)的溫濕度、氣體濃度會有較明顯的變化。通過對舍內(nèi)氣體濃度變化進行預測,可以實現(xiàn)豬舍環(huán)境控制設備運行狀態(tài)的提前調(diào)控,從而彌補在豬舍環(huán)境實際控制過程中的環(huán)境控制效果滯后的問題。
目前,畜禽舍內(nèi)有害氣體濃度變化模型主要有兩種,一種是基于理化統(tǒng)計的模型,這類模型通過對氣體的產(chǎn)生機理或者不同影響因素進行分析構(gòu)建預測模型,例如:文獻[3]在多種不同空氣溫度和空氣濕度組合下連續(xù)測量多天糞便的NH3排放構(gòu)建雞糞NH3排放模型;文獻[4]通過對多種不同地板類型的豬舍的NH3排放進行檢測和分析,得到不同地板類型豬舍的NH3排放系數(shù)。這些模型測量方法較復雜且受實際畜禽舍結(jié)構(gòu)影響大,實用性較差。另一種是基于人工智能算法的預測模型,例如,基于支持向量回歸機(Support vctor regression,SVR)、隨機森林(Random forest,RF)、極限隨機樹(Extra tree,ET)等傳統(tǒng)機器學習算法構(gòu)建的預測模型[5-7],基于卷積神經(jīng)網(wǎng)絡(Convolutional neural networks,CNN)、GRU等深度學習算法構(gòu)建的預測模型[2,8-13],將自回歸模型(Autoregressive model,AR)、ARIMA等統(tǒng)計學習算法與機器學習算法互相結(jié)合的混合預測模型[5,14-15]。與傳統(tǒng)理化統(tǒng)計模型相比,基于人工智能算法的模型具有預測精度高,可更好地提取氣體濃度變化特征的優(yōu)點,已成為畜禽舍氣體環(huán)境控制領(lǐng)域研究的熱點。
畜禽舍內(nèi)有害氣體濃度隨時間不斷變化,具有典型的時序序列數(shù)據(jù)的特征[9]。在眾多的智能預測算法中,GRU模型不僅擅長提取時間序列中非線性長期依賴關(guān)系且訓練速度較快。因此,許多學者關(guān)注GRU模型對時間序列數(shù)據(jù)的預測[16-17],同時探索將CNN、注意力機制與GRU模型相融合的混合網(wǎng)絡模型[9],以提高時序序列數(shù)據(jù)的關(guān)鍵特征及信息提取能力。在時序序列數(shù)據(jù)預測神經(jīng)網(wǎng)絡模型中,超參數(shù)是影響模型性能的重要因素。然而,依據(jù)傳統(tǒng)經(jīng)驗選取超參數(shù)往往較難取得良好效果。因此,學者們開始嘗試使用麻雀搜索算法(Sparrow search algorithm,SSA)、粒子群優(yōu)化算法(Particle swarm optimization,PSO)、灰狼優(yōu)化算法(Grey wolf optimization,GWO)等優(yōu)化算法進行神經(jīng)網(wǎng)絡超參數(shù)尋優(yōu)[2,18-24],來提升網(wǎng)絡模型預測性能。研究表明,通過模擬麻雀種群覓食和躲避天敵的行為而提出的麻雀搜索算法[21],其搜索精度和收斂速度均優(yōu)于PSO、GWO和遺傳算法(Genetic algorithm,GA),但是SSA仍然存在容易陷入局部最優(yōu)的問題[23],進而導致模型預測精度低。
為了解決當前有害氣體濃度預測模型存在的預測精度低的問題,本文構(gòu)建基于ISSA-GRU-ARIMA的豬舍有害氣體濃度預測模型,該模型使用改進麻雀搜索算法對GRU模型超參數(shù)進行尋優(yōu),以提升GRU模型非線性擬合能力,同時融合ARIMA模型對時間序列模型的殘差序列信息進一步提取以提高模型預測精度。
1.1.1豬舍結(jié)構(gòu)
本文數(shù)據(jù)來源于黑龍江省哈爾濱市尚志市亞布力驚哲養(yǎng)殖基地(44.78°N,128.47°E)的一個妊娠母豬舍,豬舍地面是水泥漏糞地板。豬舍尺寸為19.5 m×10.5 m×2.4 m,限位欄尺寸為2.2 m×0.65 m×1 m。豬舍采用機械通風,一側(cè)墻上安裝了3個風機,風機1(fan1)和風機2(fan2)尺寸均為0.8 m×0.8 m,額定功率為0.37 kW,風機3(fan3)尺寸為1 m×1 m,額定功率為0.55 kW。舍內(nèi)飼養(yǎng)有37頭妊娠母豬,豬平均質(zhì)量約為165 kg,豬舍現(xiàn)場如圖1所示,平面結(jié)構(gòu)如圖2所示。
圖1 豬舍現(xiàn)場圖
圖2 豬舍平面結(jié)構(gòu)圖
1.1.2豬舍環(huán)境監(jiān)測
豬舍內(nèi)安裝了基于物聯(lián)網(wǎng)系統(tǒng)的自動環(huán)境監(jiān)測及控制器,該控制器以STM32F103VET6芯片為核心。在豬舍內(nèi)設有3個環(huán)境監(jiān)測點,每個監(jiān)測點分別安裝有溫濕度、NH3質(zhì)量濃度、CO2質(zhì)量濃度傳感器,傳感器距離地面高度為1.6 m,將3個環(huán)境監(jiān)測點監(jiān)測數(shù)據(jù)的平均值作為舍內(nèi)溫濕度、NH3質(zhì)量濃度、CO2質(zhì)量濃度取值。舍外布置1個溫濕度傳感器對舍外溫濕度進行實時監(jiān)測,3個壓差傳感器分別布置在3個風機正上方,對墻上風機承受的壓力差進行監(jiān)測,環(huán)境數(shù)據(jù)采樣時間間隔為1 min,采集到的環(huán)境數(shù)據(jù)通過Wi-Fi模塊上傳至物聯(lián)網(wǎng)云平臺,傳感器輸出信號類型均為RS-485,通信協(xié)議為Modbus,傳感器具體參數(shù)如表1所示。通風速率通過持續(xù)監(jiān)測風機運行時間、風機承受的壓差變化以及現(xiàn)場實驗數(shù)據(jù)擬合線性方程[25]計算得到,公式為
表1 傳感器技術(shù)參數(shù)
V=(0.534 2P1+112.9)e1+(0.521 7P2+106.5)e2+
(0.626 8P3+213.6)e3
(1)
式中Pi——風機i所承受的壓差,Pa,i=1,2,3
ei——風機i在1 min內(nèi)運行的時間占比,%
V——豬舍風機通風速率,m3/min
豬舍投喂飼料和清理糞便均采用人工的方式,其中,喂食時間為每日08:00—08:30和14:00—14:30,清糞時間為每日08:30—09:00和14:30—15:00。
本文模型開發(fā)硬件環(huán)境為Intel core i7 12700H處理器,Nvidia RTX3070顯卡,Windows 11 64位操作系統(tǒng)。模型算法開發(fā)采用Python 3.7編程語言結(jié)合Tensorflow框架和sklearn框架。
本文構(gòu)建以GRU模型為核心的時序數(shù)據(jù)預測模型,提取豬舍環(huán)境數(shù)據(jù)的非線性特征,然后建立改進的麻雀搜索算法對GRU模型的超參數(shù)進行優(yōu)化,提升GRU模型的非線性特征擬合能力,再利用ARIMA模型的線性數(shù)據(jù)擬合能力來提取殘差數(shù)據(jù)的線性特征。建立的ISSA-GRU-ARIMA模型結(jié)合了ISSA的尋優(yōu)能力、GRU的非線性處理能力和ARIMA的線性處理能力,提升了模型的預測精度。將舍內(nèi)溫度、舍內(nèi)相對濕度、舍外溫度、舍外相對濕度、CO2質(zhì)量濃度、NH3質(zhì)量濃度、通風速率的數(shù)據(jù)序列作為ISSA-GRU-ARIMA模型輸入,模型輸出為2個值,分別是1 h后的CO2質(zhì)量濃度和NH3質(zhì)量濃度。優(yōu)化模型構(gòu)建過程如下:
(1)將預處理后的環(huán)境數(shù)據(jù)劃分為訓練集1、訓練集2和測試集3部分,在訓練集1上對GRU模型進行訓練,然后通過ISSA算法對模型超參數(shù)進行尋優(yōu)得到最優(yōu)GRU模型,命名為ISSA-GRU模型。
(2)使用ISSA-GRU模型對訓練集2上的氣體濃度進行預測,分別得到NH3質(zhì)量濃度、CO2質(zhì)量濃度的觀測值與預測值之間的殘差序列DNH3和DCO2。
(3)以殘差序列DNH3和DCO2作為數(shù)據(jù)集構(gòu)建ARIMA模型,ARIMA模型可以提取DNH3和DCO2的變化規(guī)律。
(4)構(gòu)建ISSA-GRU-ARIMA模型對未來時刻的有害氣體濃度進行預測,在測試集上對ISSA-GRU-ARIMA模型預測精度進行測試。
1.3.1數(shù)據(jù)預處理及數(shù)據(jù)集劃分
選取從2022年8月10日到9月30日共52 d的環(huán)境數(shù)據(jù)(舍內(nèi)溫度、舍內(nèi)相對濕度、舍外溫度、舍外相對濕度、CO2質(zhì)量濃度、NH3質(zhì)量濃度、通風速率)作為實驗數(shù)據(jù)。對于傳感器采集的極個別時刻的缺失值采用線性插值法進行補全;然后采取拉伊達準則對數(shù)據(jù)進行處理剔除其中的異常值,異常值被替換為相鄰數(shù)據(jù)的平均值。
1 h內(nèi)環(huán)境因素變化較小,因此將時間間隔為1 min的數(shù)據(jù)平均化處理為時間間隔為60 min的數(shù)據(jù),共得到1 248組數(shù)據(jù)。為了消除量綱的差異,將數(shù)據(jù)輸入模型前需要進行歸一化,模型預測結(jié)果需要進行反歸一化。
通過滑動窗口構(gòu)建數(shù)據(jù)集,使用前3 h的數(shù)據(jù)序列對后1 h的有害氣體質(zhì)量濃度進行預測。將實驗數(shù)據(jù)劃分為訓練集1、訓練集2和測試集3部分,各部分占比分別是70%、20.4%和9.6%。訓練集1用于ISSA-GRU模型訓練,訓練集2用于ISSA-GRU-ARIMA模型擬合,最后使用測試集對ISSA-GRU-ARIAM模型進行測試。
1.3.2氣體質(zhì)量濃度預測GRU非線性模型
豬舍環(huán)境具有時序性、非線性、相互耦合的特性[8],尤其是舍內(nèi)NH3質(zhì)量濃度與CO2質(zhì)量濃度受多因素條件影響,因此需要構(gòu)建具有較強的非線性擬合能力和最大限度地提取時序數(shù)據(jù)特征的GRU神經(jīng)網(wǎng)絡模型來預測氣體質(zhì)量濃度變化。本文構(gòu)建的GRU神經(jīng)網(wǎng)絡模型由輸入層、隱藏層和全連接層3部分組成,其結(jié)構(gòu)如圖3所示。
圖3 GRU神經(jīng)網(wǎng)絡結(jié)構(gòu)
輸入層接收到舍內(nèi)溫度、舍內(nèi)相對濕度、舍外溫度、舍外相對濕度、CO2質(zhì)量濃度、NH3質(zhì)量濃度、通風速率時序數(shù)據(jù),然后按照公式
(2)
式中zi——輸入的環(huán)境數(shù)據(jù)
z′i——歸一化后的環(huán)境數(shù)據(jù)
zmax——輸入環(huán)境數(shù)據(jù)最大值
zmin——輸入環(huán)境數(shù)據(jù)最小值
進行歸一化,歸一化后的數(shù)據(jù)直接傳入隱藏層。
隱藏層由2個GRU子層組成。兩個GRU子層的神經(jīng)元數(shù)量分別為486和315,GRU神經(jīng)網(wǎng)絡單元使用更新門和重置門兩個門來實現(xiàn)信息的記憶和傳遞[16],如圖4所示。更新門zt決定當前節(jié)點的新增歷史信息比例,從而可以捕捉序列數(shù)據(jù)的短期依賴關(guān)系;重置門rt決定拋棄歷史信息的比例,可以更好地提取序列數(shù)據(jù)的長期依賴關(guān)系。時序序列多環(huán)境因子之間依賴關(guān)系的計算公式為
圖4 GRU神經(jīng)單元結(jié)構(gòu)
rt=σ(Wr[ht-1,at]+br)
(3)
zt=σ(Wz[ht-1,at]+bz)
(4)
(5)
(6)
式中at——當前單元輸入值
ht-1——上一神經(jīng)單元狀態(tài)
ht——輸出狀態(tài)
Wr、Wz、Wh——重置門、更新門、當前隱藏狀態(tài)的權(quán)值
br、bz、bh——重置門、更新門、當前隱藏狀態(tài)的偏置值
σ——sigmod激活函數(shù)
全連接層每一個結(jié)點都與GRU子層的所有結(jié)點相連,通過GRU子層學習到的特征傳入全連接層。全連接層經(jīng)過非線性變換提取數(shù)據(jù)之間的依賴關(guān)系并輸出預測值,最后按照式(2)對輸出進行反歸一化,全連接層的輸出為NH3質(zhì)量濃度預測值和CO2質(zhì)量濃度預測值。
GRU神經(jīng)網(wǎng)絡使用均方誤差(MSE)作為損失函數(shù),通過MSE計算誤差后反向傳播,然后通過Adam優(yōu)化器根據(jù)誤差不斷優(yōu)化權(quán)重,最終得到預測精度較高的模型。
1.3.3改進麻雀搜索算法
由于GRU預測模型的超參數(shù)眾多,這些參數(shù)對網(wǎng)絡模型的性能影響較大,因此需要對GRU網(wǎng)絡模型超參數(shù)進行優(yōu)化,以獲得最佳的模型性能。SSA是一種模擬麻雀覓食和躲避天敵行為而提出的群智能優(yōu)化算法[21],具有較好的全局探索能力和較快的收斂速度[22],有助于GRU預測模型對超參數(shù)進行尋優(yōu),但是SSA存在容易陷入局部最小值的問題。
混沌序列具有規(guī)律性、遍歷性和隨機性,將其用于搜索算法可以有效提升尋優(yōu)效果,在混沌序列中,Tent序列相比常用的Logistic序列分布更加均勻且收斂速度更快;Tent混沌序列可以用于種群初始化以提高種群多樣性[26],還可以對局部極值進行擾動以擴大搜索空間,從而有利于算法跳出局部最優(yōu)[24];高斯分布在期望附近概率最大,引入高斯變異可以對原始解周圍進行重點搜索。因此,本文使用混沌序列、高斯變異和混沌擾動對麻雀搜索算法進行改進,來提升初始解分布的均勻性及局部尋優(yōu)效果,得到改進的麻雀搜索算法。在ISSA中,一只麻雀代表一組解,包含時間窗口、學習率、批數(shù)目、第1層GRU子層神經(jīng)元個數(shù)和第2層GRU子層神經(jīng)元個數(shù)這些需要搜索的超參數(shù),麻雀個數(shù)代表解的個數(shù)。ISSA算法步驟如下:
(1)使用公式
(7)
式中O——粒子數(shù)量
rand(0,1)——[0,1]范圍內(nèi)的隨機數(shù)
產(chǎn)生Tent混沌序列S對種群進行初始化,然后使用公式
(8)
umin——解序列第u維變量的最小值
Su——混沌序列的第u維變量
umax——解序列第u維變量的最大值
將其映射到原始解空間,產(chǎn)生的解維度為5,個數(shù)為10。
(2)計算種群中所有個體的適應度fi,并對其進行排序,適應度是評判解優(yōu)劣的指標,本實驗適應度函數(shù)設置為均方誤差,適應度越低表明優(yōu)化算法搜索到的解越優(yōu)秀。
(3)根據(jù)適應度選出發(fā)現(xiàn)者和捕食者,然后分別按照公式
(9)
其中α∈(0,1]ST∈[0.5,1]R2∈[0,1]
式中t——迭代次數(shù)
itermax——最大迭代次數(shù)
α——隨機數(shù)
Xi,j——第i個解在第j維的位置信息
ST——預警值
R2——安全值,當R2 Q——符合正態(tài)分布的隨機數(shù) L——元素都為1的1×u的矩陣 (10) 其中 C+=CT(CCT)-1 式中XP——當前發(fā)現(xiàn)者最優(yōu)位置 Xworst——全局最差位置 對其位置進行更新。 (4)隨機選取種群中一定比例的個體作為警戒者,并按照公式 (11) 式中Xg——全局最優(yōu)位置 fg——全局最佳適應度,fi>fg表示麻雀處于邊緣位置且容易被天敵發(fā)現(xiàn),fi=fg表示警戒者發(fā)現(xiàn)了敵人,需要前往安全位置 β——服從均值為0、方差為1的正態(tài)分布的隨機數(shù), 用于控制步長 K——隨機數(shù),表示麻雀移動的方向,取(-1,1) fworst——全局最差適應度 ε——無限接近0的常數(shù),避免分母出現(xiàn)0 對其進行更新。 (5)在進行一輪迭代后,輸出當前迭代的最小適應度,以及對應的GRU模型超參數(shù)尋優(yōu)值,然后重新計算所有解的適應度fi和平均適應度favg。 (6)當fi g=x(1+N(0,1)) (12) 式中x——需要進行變異的解 N——隨機數(shù),均值為0,方差為1 g——高斯變異后的解 進行高斯變異對此解周圍區(qū)域進行重點搜索,然后將變異后的解與原始解進行比較,兩者之中保留最優(yōu)的解。當fi≥favg時,使用公式 X′new=(X′+Xnew)/2 (13) 式中X′new——Tent混沌擾動后產(chǎn)生的解 X′——需要進行Tent混沌擾動的解 Xnew——使用式(7)、(8)新產(chǎn)生的擾動量 對此解進行Tent混沌擾動,然后將擾動后的解與原始解進行比較,兩者之中保留最優(yōu)的解。 (7)對種群進行更新后得到最優(yōu)適應度以及最優(yōu)位置。 (8)當算法達到最大迭代次數(shù)時停止算法,未達到時返回步驟(3)。 1.3.4ARIMA殘差預測模型 ISSA-GRU模型的有害氣體濃度預測精度雖然相比于單一GRU模型有所提升,但是通過本文實驗研究發(fā)現(xiàn),ISSA-GRU模型預測得到的殘差序列仍然具備一定的規(guī)律,有必要對其進行進一步提取。ARIMA算法可以通過歷史數(shù)據(jù)對未來值進行預測,不僅具有優(yōu)秀的時間序列提取能力,更能精確反映時間序列發(fā)展規(guī)律[14],因此使用ARIMA算法對歷史氣體質(zhì)量濃度殘差序列的有價值信息進行提取和挖掘,然后對未來氣體質(zhì)量濃度殘差值進行預測,以獲得更加精確的預測值。ARIMA(p,d,q)模型是由差分運算和自回歸滑動平均模型(Autoregressive moving average model,ARMA)模型組成,d指的是序列轉(zhuǎn)化成平穩(wěn)序列所需的差分次數(shù);ARMA(p,q)模型是由自回歸項和移動平均項組成的,p指的是自回歸項階數(shù),q指的是移動平均項階數(shù),ARMA(p,q)模型為 Nt=λ+α1Nt-1+α2Nt-2+…+αpNt-p+εt+ θ1εt-1+θ2εt-2+…+θqεt-q (14) 式中Nt——殘差序列中第t個值 αi——自回歸項系數(shù) θq——移動平均項系數(shù) εt——白噪聲序列中第t個值 λ——常數(shù) ARIMA(p,d,q)模型建模步驟如下: (1)使用ISSA-GRU模型對訓練集2進行預測,觀測值序列與預測值序列的差值為殘差序列,殘差序列為ARIMA模型的輸入。 (2)由于ARIMA模型的輸入序列必須為平穩(wěn)序列,使用單位根檢驗對殘差時序數(shù)據(jù)的平穩(wěn)性進行檢驗,當P<0.05拒絕原假設,該序列為平穩(wěn)序列,否則該序列為非平穩(wěn)序列,需要對序列進行差分直到序列平穩(wěn),方能通過平穩(wěn)性檢驗。 (3)對差分后的序列使用Ljung_Box檢驗進行白噪聲檢驗,當P<0.05拒絕原假設,該序列為非白噪聲序列,否則該序列為白噪聲序列,通過白噪聲檢驗后進行下一步。 (4)使用最小赤池信息準則(Akaike information criterion,AIC)確定p和q的參數(shù),AIC取值最小的ARIMA模型為最優(yōu)模型。 (5)使用最優(yōu)的ARIMA(p,d,q)模型對殘差值進行預測。 采用均方根誤差(RMSE)、平均絕對百分比誤差(MAPE)和決定系數(shù)R2對模型的性能進行評估。 選取2022年8月10日到9月30日共52 d的預處理后環(huán)境數(shù)據(jù)作為實驗數(shù)據(jù),豬舍環(huán)境因子變化曲線如圖5所示;其統(tǒng)計結(jié)果如表2所示。 表2 豬舍環(huán)境數(shù)據(jù)統(tǒng)計 圖5 環(huán)境因子變化曲線 豬舍內(nèi)有害氣體濃度受豬舍內(nèi)外溫度、濕度等多環(huán)境因素的影響,構(gòu)建有害氣體濃度預測模型時加入外部影響因素可以使模型更加充分學習到預測目標的特征。使用Pearson’s系數(shù)分析法(P<0.05)對影響NH3質(zhì)量濃度和CO2質(zhì)量濃度的多環(huán)境因素進行相關(guān)性分析,如表3所示。 表3 皮爾森系數(shù)相關(guān)性分析 豬舍內(nèi)NH3質(zhì)量濃度與CO2質(zhì)量濃度具有較強的正相關(guān)性,相關(guān)系數(shù)為0.72。豬舍內(nèi)NH3質(zhì)量濃度與舍內(nèi)、外溫度和通風速率呈負相關(guān)性,相關(guān)系數(shù)分別為-0.49、-0.58和-0.36;NH3質(zhì)量濃度與舍內(nèi)、外濕度具有正相關(guān)性,相關(guān)系數(shù)分別為0.26和0.21。豬舍內(nèi)CO2質(zhì)量濃度與舍內(nèi)、外相對濕度具有正相關(guān)性,相關(guān)系數(shù)分別為0.41和0.30;CO2質(zhì)量濃度與舍內(nèi)、外溫度和通風速率具有較強的負相關(guān)性,相關(guān)系數(shù)分別為-0.81、-0.62和-0.48。 相關(guān)性分析的結(jié)果證明了豬舍內(nèi)環(huán)境因子之間具有相關(guān)性,建模時加入外部影響因素可以減少模型預測誤差。因此,本文選取通風速率、舍內(nèi)溫度、舍內(nèi)相對濕度、舍外溫度、舍外相對濕度、CO2質(zhì)量濃度作為NH3質(zhì)量濃度的外部影響因素;選取通風速率、舍內(nèi)溫度、舍內(nèi)相對濕度、舍外溫度、舍外相對濕度、NH3質(zhì)量濃度作為CO2質(zhì)量濃度的外部影響因素。 在使用優(yōu)化算法對超參數(shù)進行尋優(yōu)之前通過預實驗確定GRU子層數(shù)目。實驗結(jié)果如圖6所示,當GRU子層數(shù)目為1時,模型預測的RMSE分別為90.51 mg/m3和0.496 2 mg/m3;當GRU子層數(shù)增加到2時,模型預測的RMSE分別為83.15 mg/m3和0.381 mg/m3;當GRU子層數(shù)繼續(xù)增加時,預測精度卻下降,故本模型GRU子層數(shù)目設置為2。 圖6 不同GRU層數(shù)時模型預測的均方根誤差變化 使用ISSA算法對GRU神經(jīng)網(wǎng)絡的時間窗口、學習率、批數(shù)目、GRU子層1神經(jīng)元個數(shù)、GRU子層2神經(jīng)元個數(shù)這5個超參數(shù)進行尋優(yōu),尋優(yōu)范圍如表4所示。ISSA對GRU模型超參數(shù)尋優(yōu)過程中優(yōu)化算法種群數(shù)目設置為10,迭代次數(shù)設置為50,預警值設置為0.8,發(fā)現(xiàn)者比例設置為80%,警戒者比例設置為20%。ISSA算法對GRU模型的超參數(shù)優(yōu)化結(jié)果如表4所示,當時間窗口值為3,學習率為0.000 6,批數(shù)目為71,兩個GRU子層的神經(jīng)元數(shù)目分別為486和315時模型預測精度最優(yōu)。 表4 ISSA尋優(yōu)參數(shù) 為了更好評估ISSA算法對GRU模型預測精度的優(yōu)化,本文選取PSO算法、SSA算法和GWO算法進行對比。如圖7所示。隨著迭代次數(shù)的增加4種算法都逐漸收斂,ISSA算法的適應度最低(0.005 6),較PSO(0.006 2)、SSA(0.005 9)和GWO(0.006 0)3種算法的適應度分別降低9.68%、5.08%和6.67%,因此說明ISSA算法具有更高的搜索精度。 圖7 4種不同算法適應度變化曲線 以訓練集2為數(shù)據(jù)集,使用超參數(shù)優(yōu)化后的ISSA-GRU模型對舍內(nèi)NH3質(zhì)量濃度、CO2質(zhì)量濃度進行預測,得到的監(jiān)測值與預測值的殘差序列如圖8所示,使用殘差序列構(gòu)建ARIMA模型。 圖8 殘差變化曲線 以NH3質(zhì)量濃度殘差序列為輸入,對ARIMA模型輸入序列的平穩(wěn)性進行檢驗,P=8.85×10-14<0.05,該序列通過平穩(wěn)性檢驗,NH3質(zhì)量濃度殘差序列為平穩(wěn)序列,因此d=0。NH3質(zhì)量濃度殘差序列的白噪聲檢驗P=5.44×10-4<0.05,NH3殘差序列為非白噪聲序列。以CO2質(zhì)量濃度殘差序列為輸入,對ARIMA模型輸入序列的平穩(wěn)性進行檢驗,P=6.27×10-13<0.05,該序列通過平穩(wěn)性檢驗,CO2質(zhì)量濃度殘差序列為平穩(wěn)序列,因此d=0。CO2質(zhì)量濃度殘差序列的白噪聲檢驗P=1.60×10-21<0.05,CO2質(zhì)量濃度殘差序列為非白噪聲序列。 使用網(wǎng)格搜索法確定p和q的取值,當p取3且q取1時NH3質(zhì)量濃度殘差ARIMA預測模型AIC值最小,為447.232 2,此時ARIMA模型最優(yōu),NH3質(zhì)量濃度殘差最優(yōu)ARIMA模型為ARIMA(3,0,1),根據(jù)相同步驟可確定CO2質(zhì)量濃度殘差最優(yōu)ARIMA模型為ARIMA(4,0,1)。 使用測試集對模型預測精度進行測試,如圖9所示,ISSA-GRU-ARIMA模型對NH3質(zhì)量濃度和CO2質(zhì)量濃度的預測值變化趨勢與觀測值變化趨勢都非常接近,呈現(xiàn)出周期性正弦或余弦曲線波動變化。NH3質(zhì)量濃度觀測值變化范圍為0.9~5.4 mg/m3,ISSA-GRU-ARIMA模型預測值變化范圍為 0.8~5.5 mg/m3,預測值與觀測值的最小誤差為0 mg/m3,最大誤差為1 mg/m3,平均誤差為0.2 mg/m3。CO2質(zhì)量濃度觀測值變化范圍為983.5~2 796.5 mg/m3,ISSA-GRU-ARIMA模型預測值變化范圍為978.5~2 823.5 mg/m3;預測值與觀測值的最小誤差為1 mg/m3,最大誤差為194 mg/m3,平均誤差為41 mg/m3。 圖9 不同模型預測值對比 2.4.1不同模型預測結(jié)果對比 為了進一步驗證模型預測效果,使用CNN、GRU、SVR、RF、PSO-GRU、GWO-GRU、SSA-GRU、ISSA-GRU、ISSA-CNN、ISSA-CNN-ARIMA模型進行對比實驗,與本文所提模型ISSA-GRU-ARIMA使用相同數(shù)據(jù)集,實驗結(jié)果如表5所示。CNN、GRU、SVR、RF是常見基礎(chǔ)模型,PSO-GRU、GWO-GRU、SSA-GRU是使用其他優(yōu)化算法對GRU模型進行優(yōu)化,ISSA-CNN、ISSA-CNN-ARIMA是使用ISSA算法和ARIMA算法對CNN進行優(yōu)化。 表5 模型預測精度對比 如表5所示,本文模型ISSA-GRU-ARIMA預測精度最優(yōu),NH3質(zhì)量濃度預測的RMSE、MAPE和R2分別為0.263 mg/m3、8.171%和0.928,CO2質(zhì)量濃度預測的RMSE、MAPE和R2分別為55.361 mg/m3、4.633%和0.985。傳統(tǒng)機器學習模型RF預測精度最差,NH3質(zhì)量濃度預測RMSE、MAPE和R2分別為0.722 mg/m3、20.592%和0.4978,CO2質(zhì)量濃度預測的RMSE和MAPE和R2分別為170.873 mg/m3、12.926%和0.859。本文模型與RF模型相比,NH3質(zhì)量濃度預測RMSE和MAPE分別下降63.51%和60.31%,R2提升86.41%,CO2質(zhì)量濃度預測的RMSE和MAPE分別下降67.58%和64.14%,R2提升14.65%。 ISSA-GRU模型與GRU模型相比,NH3和CO2質(zhì)量濃度預測的RMSE和MAPE分別降低21.69%和20.66%,17.25%和20.25%;R2分別提升了6.87%和1.28%,說明使用ISSA算法進行尋優(yōu)顯著可提升GRU模型的預測精度。ISSA-GRU與PSO-GRU、GWO-GRU和SSA-GRU相比,NH3質(zhì)量濃度預測的RMSE分別下降18.97%、11.57%和7.27%,CO2質(zhì)量濃度預測的RMSE分別下降17.26%、17.24%和5.40%;NH3質(zhì)量濃度預測的MAPE分別下降26.48%、7.64%和14.91%,CO2質(zhì)量濃度預測的MAPE分別下降15.94%、14.77%和6.71%;NH3質(zhì)量濃度預測的R2分別上升5.63%、2.92%和1.69%,CO2質(zhì)量濃度預測的R2分別上升1.01%、1.00%和0.26%,說明ISSA相比其他優(yōu)化算法擁有更優(yōu)秀的尋優(yōu)能力。 ISSA-GRU-ARIMA模型與ISSA-GRU相比,NH3質(zhì)量濃度預測的RMSE和MAPE分別下降11.66%和12.13%,R2提升2.24%,CO2質(zhì)量濃度預測的RMSE和MAPE分別下降16.08和15.99%,R2提升0.64%,由此可見,融合線性統(tǒng)計ARIMA方法后的ISSA-GRU-ARIMA模型,可以充分挖掘ISSA-GRU預測殘差序列的有用信息,進一步提升模型預測精度。 2.4.2結(jié)果分析 近年來,對豬舍氣體濃度進行預測已成為豬舍環(huán)境控制研究的關(guān)注熱點,國內(nèi)外學者針對畜禽舍內(nèi)不同氣體構(gòu)建了不同的預測模型。例如,文獻[7]提出的基于ANFIS的NH3質(zhì)量濃度預測模型R2為0.648; 文獻[9]構(gòu)建的融合注意力機制和CNN網(wǎng)絡的CNN-LSTM-AT模型,其CO2質(zhì)量濃度預測的R2為0.8170;文獻[27]使用不同時間間隔環(huán)境因子構(gòu)建基于長短期記憶網(wǎng)絡的CO2質(zhì)量濃度預測模型,其R2分別為0.859和0.656,文獻[28]使用多種機器學習模型對NH3質(zhì)量濃度進行預測,梯度提升樹算法取得了最好的預測效果,R2為0.402。這些模型對NH3質(zhì)量濃度和CO2質(zhì)量濃度預測的R2范圍為0.4~0.9,本文所提出ISSA-GRU-ARIMA模型對NH3質(zhì)量濃度和CO2質(zhì)量濃度預測R2分別是0.928和0.985,優(yōu)于上述已有研究中的模型,可為豬舍氣體濃度預測及環(huán)境控制提供可行的方法。 綜上,本文ISSA-GRU-ARIMA氣體質(zhì)量濃度預測模型預測精度較優(yōu),可用于豬舍NH3質(zhì)量濃度和CO2質(zhì)量濃度預測。 (1)通過ISSA算法優(yōu)化GRU模型的超參數(shù),可提升氣體質(zhì)量濃度預測模型的精度。ISSA-GRU模型NH3質(zhì)量濃度預測的RMSE、MAPE和R2分別為0.298 mg/m3、9.301%和0.907,CO2質(zhì)量濃度預測的分別為65.974 mg/m3、5.515%和0.979;與GRU(RMSE分別為0.381 mg/m3和83.151 mg/m3,MAPE分別為11.247%和6.916%,R2分別為0.849和0.967)相比,RMSE、MAPE分別降低21.69%和20.66%,17.25%和20.25%;R2分別提升6.87%和1.28%。 (2)融合統(tǒng)計學習ARIMA方法對ISSA-GRU模型進行優(yōu)化,使得NH3質(zhì)量濃度和CO2質(zhì)量濃度預測的RMSE分別下降11.66%和16.08%,因此ARIMA模型對殘差進行線性特征提取可以提升模型預測精度。 (3)提出的ISSA-GRU-ARIMA模型對NH3質(zhì)量度和CO2質(zhì)量濃度預測的R2分別為0.928和0.985,預測精度較高,預測結(jié)果可以為豬舍有害氣體濃度控制提供科學依據(jù)。1.4 模型評價指標
2 結(jié)果與分析
2.1 豬舍環(huán)境因子監(jiān)測結(jié)果及相關(guān)性分析
2.2 ISSA-GRU模型構(gòu)建
2.3 ARIMA模型構(gòu)建
2.4 ISSA-GRU-ARIMA模型預測結(jié)果驗證
3 結(jié)論