本發明涉及檢測技術領域,具體涉及一種水產養殖溶解氧預測方法及裝置。
背景技術:
中國是水產養殖大國,水產品產量和質量的保證取決于養殖水質是否適合水生生物生存。影響水質的因素有很多,包括溶解氧、氨氮含量、ph值、硝酸鹽、人工喂食、施藥、降雨量以及太陽輻射等。溶解氧是水生生物生存必不可少的條件,溶解氧濃度低于3mg/l時,就會引起魚類死亡。因此,研究養殖水質溶解氧預測方法具有重要意義。
現有的預測方法有很多,主要分為兩種類型:第一類是傳統的預測方法,把經典數學作為理論基礎,包括時間序列預測法、回歸分析法、馬爾科夫模型、水質模擬預測法等;第二類是基于人工智能的預測方法,包括灰色模型、人工神經網絡預測法、支持向量機回歸預測法等。但是現有的預測方法均存在計算量大誤差累積率高,不滿足水產養殖企業對水質短期預測的需求。
技術實現要素:
為解決上述技術問題,本發明提供一種水產養殖溶解氧預測方法及裝置,實現對水質溶解氧數據的精準預測。
為實現上述目的,本發明提供以下技術方案:
一方面,本發明提供了一種水產養殖溶解氧預測方法,所述方法包括如下步驟:
采集水產養殖池塘的按時間序列排序的溶解氧數據;
對溶解氧數據進行集合經驗模態分解得到本征模態函數和剩余分量;
根據本征模態函數的波動頻率將本征模態函數分為高頻項、中頻項和低頻項;
通過最小二乘支持向量機對高頻項和中頻項進行建模并進行溶解氧預測;
通過思維進化算法優化bp神經網絡對低頻項進行建模并進行溶解氧預測;
通過灰色預測模型對剩余分量進行建模并進行溶解氧預測;
將最小二乘支持向量機、思維進化算法優化bp神經網絡和灰色預測模型三者的預測結果疊加獲取水產養殖的溶解氧的預測值。
進一步的,所述對溶解氧數據進行集合經驗模態分解得到本征模態函數和剩余分量,具體包括如下步驟:
s1:將含有按時間序列排序的溶解氧數據的信號加入白噪聲信號,構成信噪混合體;
s2:將信噪混合體進行經驗模態分解,得到本征模態函數的分量和剩余分量的支量;
s3:重復n次步驟s1和步驟s2,且步驟s1中每次加入不同的白噪聲,獲取n個本征模態函數的分量和n個剩余分量的支量;
s4:n個本征模態函數的分量的平均值為本征模態函數,n個剩余分量的支量的平均值為剩余分量。
進一步的,所述將信噪混合體進行經驗模態分解,得到本征模態函數的分量和剩余分量的支量,包括:
s21:獲取含有按時間序列排序的溶解氧數據的信號的局部極大值點和局部極小值點;根據三次樣條線分別將局部極大值點連接起來形成上包絡線,局部極小值點連接起來形成下包絡線;
s22:根據局部極大值包絡線和局部極小值包絡線計算平均包絡線值;
s23:獲取含有按時間序列排序的溶解氧數據信號的幅值與平均包絡線值的差值;
s24:若差值符合本征模態函數條件,則差值為第一個本征模態函數的分量;若差值不符合本征模態函數條件,則對差值執行步驟s21、步驟s22和步驟s23并獲得二次差值,判斷二次差值是否符合本征模態函數條件;直至第k次的k次差值符合本征模態函數條件;
s25:將含有按時間序列排序的溶解氧數據信號的幅值與k次差值的差數設為原始序列,重復步驟s21、步驟s22、步驟s23和步驟s24,直至差數為常數或單調函數,分解結束。
進一步的,所述通過最小二乘支持向量機對高頻項和中頻項進行建模并進行溶解氧預測,包括:
根據最小二乘支持向量機的輸入參數維數,建立預測模型;
根據溶解氧數據的訓練樣本獲取預測模型的組合參數;
根據組合參數構建高頻項和中頻項的預測模型對高頻項和中頻項的溶解氧進行預測。
進一步的,所述通過思維進化算法優化bp神經網絡對低頻項進行建模并進行溶解氧預測,包括:
采用思維進化算法對bp神經網絡的初始權值和初始閾值進行優化處理,根據優化后的初始權值和初始閾值建立初始預測模型;
根據初始預測模型的輸入信號及輸出信號計算預測誤差;
根據預測誤差重新配置權值和閾值;
根據重新配置的權值和閾值建立的預測模型對低頻項進行溶解氧預測。
進一步的,通過灰色預測模型對剩余分量進行建模并進行溶解氧預測,包括:
根據溶解氧數據的觀察值疊加生成新序列;
根據新序列建立微分方程模型;其中,采用最小二乘法計算微分方程模型中的待識別參數;
根據微分方程模型建立的灰色預測模型對剩余分量進行溶解氧預測。
另一方面,本發明提供一種水產養殖溶解氧預測裝置,所述裝置包括:
采集模塊,用于采集水產養殖池塘的按時間序列排序的溶解氧數據;
分解模塊,用于對溶解氧數據進行集合經驗模態分解得到本征模態函數和剩余分量;
分頻模塊,用于根據本征模態函數的波動頻率將本征模態函數分為高頻項、中頻項和低頻項;
第一預測模塊,用于通過最小二乘支持向量機對高頻項和中頻項進行建模并進行溶解氧預測;
第二預測模塊,用于通過思維進化算法優化bp神經網絡對低頻項進行建模并進行溶解氧預測;
第三預測模塊,用于通過灰色預測模型對剩余分量進行建模并進行溶解氧預測;
輸出模塊,用于將最小二乘支持向量機、思維進化算法優化bp神經網絡和灰色預測模型三者的預測結果疊加獲取水產養殖的溶解氧的預測值。
進一步的,所述分解模塊具體包括:
信號生成單元,用于將含有按時間序列排序的溶解氧數據的信號加入白噪聲信號,構成信噪混合體;
經驗模態單元,用于將信噪混合體進行經驗模態分解,得到本證模態函數的分量和剩余分量的支量;
計算單元,用于計算n次信號生成單元和經驗模態單元輸出信號,且步驟信號生成單元中每次加入不同的白噪聲,獲取n個本征模態函數的分量和n個剩余分量的支量;
輸出單元,用于n個本征模態函數的分量的平均值為本征模態函數,n個剩余分量的支量的平均值為剩余分量。
進一步的,所述第一預測模塊,包括:
第一建模單元,用于根據最小二乘支持向量機的輸入參數維數,建立預測模型;
第一訓練單元,用于根據溶解氧數據的訓練樣本獲取預測模型的組合參數;
第一預測單元,用于根據組合參數構建高頻項和中頻項的預測模型對高頻項和中頻項的溶解氧進行預測。
進一步的,所述第二預測模塊,包括:
第二建模單元,用于采用思維進化算法對bp神經網絡的初始權值和初始閾值進行優化處理,根據優化后的初始權值和初始閾值建立初始預測模型;
第二訓練單元,用于根據初始預測模型的輸入信號及輸出信號計算預測誤差;
配置單元,用于根據預測誤差重新配置權值和閾值;
第二預測單元,用于根據重新配置的權值和閾值建立的預測模型對低頻項進行溶解氧預測。
由上述技術方案可知,本發明提供的一種水產養殖溶解氧預測方法及裝置,通過集合經驗模態分解將溶解氧數據分為高頻項、中頻項、低頻項和剩余分量,實現準確把握水質溶解氧的變化情況;采用不同的溶解氧預測方式對分成的高頻項、中頻項、低頻項和剩余分量分別進行預測,實現對水質溶解氧數據的精準預測。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1是本發明的一種水產養殖溶解氧預測方法的流程示意圖;
圖2是本發明的一種水產養殖溶解氧預測方法中步驟s201的流程示意圖;
圖3是本發明的一種水產養殖溶解氧預測方法中步驟s2的流程示意圖;
圖4是本發明的一種水產養殖溶解氧預測方法中步驟s104的流程示意圖;
圖5是本發明的一種水產養殖溶解氧預測方法中步驟s105的流程示意圖;
圖6是本發明的一種水產養殖溶解氧預測方法中步驟s106的流程示意圖;
圖7是本發明的一種水產養殖溶解氧預測裝置的結構示意圖。
具體實施方式
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整的描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
現有的預測方法有很多,主要分為兩種類型:第一類是傳統的預測方法,把經典數學作為理論基礎,包括時間序列預測法、回歸分析法、馬爾科夫模型、水質模擬預測法等;第二類是基于人工智能的預測方法,包括灰色模型、人工神經網絡預測法、支持向量機回歸預測法等。但是現有的預測方法均存在計算量大誤差累積率高,不滿足水產養殖企業對水質短期預測的需求。為解決上述技術問題,本發明實施例提供一種水產養殖溶解氧預測方法及裝置。
本發明實施例一提供一種水產養殖溶解氧預測方法,參見圖1,該預測方法具體包括:
s101:采集水產養殖池塘的按時間序列排序的溶解氧數據;
在本步驟中,獲取水產養殖池塘的水質數據,按照時間順序排列成溶解氧數據。
s102:對溶解氧數據進行集合經驗模態分解得到本征模態函數和剩余分量;
在本步驟中,對上述步驟s101獲取的溶解氧數據使用集合經驗模態分解獲取不同尺度下的溶解氧數據的n個本征模態函數和1個剩余分量。
s103:根據本征模態函數的波動頻率將本征模態函數分為高頻項、中頻項和低頻項;
在本步驟中,對上述步驟s102中獲取的n個本征模態函數按照波動頻率的大小分為三類,分別為高頻項、中頻項和低頻項。
s104:通過最小二乘支持向量機對高頻項和中頻項進行建模并進行溶解氧預測;
在本步驟中,針對高頻項和中頻項波動劇烈的特點,選取最小二乘支持向量機進行建模,通過建立模型的訓練使模型的預測輸出值不斷逼近期望值,完成訓練的目的,通過訓練后的模型對高頻項和中頻項的溶解氧進行預測。
s105:通過思維進化算法優化bp神經網絡對低頻項進行建模并進行溶解氧預測;
在本步驟中,針對低頻項波動平緩的特點,選取思維進化算法優化bp神經網絡(mec-bp)進行建模,通過建立模型的訓練使模型的預測輸出值不斷逼近期望值,完成訓練的目的,通過訓練后的模型對低頻項的溶解氧進行預測。
s106:通過灰色預測模型對剩余分量進行建模并進行溶解氧預測;
在本步驟中,針對趨勢項近線性的特點,選用灰色預測模型對其建模預,建立一階微分方程模型,利用最小二乘法求解一階微分方程模型中的待辨識參數,根據一階微分方程模型建立的灰色預測模型對剩余分量進行溶解氧預測。
s107:將最小二乘支持向量機、思維進化算法優化bp神經網絡和灰色預測模型三者的預測結果疊加獲取水產養殖的溶解氧的預測值。
在本步驟中,將步驟s104、步驟s105和步驟s106中的預測值進行疊加得到水產養殖池塘的溶解氧的預測值。
從上述描述可知,本發明通過集合經驗模態方法對原始溶解氧序列進行分解,分解成不同尺度特征的各分量,將其分為高頻項、中頻項、低頻項和趨勢項共四部分,實現準確把握水質溶解氧的變化情況;針對各分量的特點,分別采用最小二乘支持向量機、思維進化算法優化bp神經網絡和灰色預測模型進行預測,預測結果疊加生成水產養殖池塘的溶解氧的預測值,實現對水質溶解氧數據的精準預測。
在一種可選實施方式中,提供了上述步驟s201的一種具體實施方式。參見圖2,上述步驟s201具體包括如下步驟:
s1:將含有按時間序列排序的溶解氧數據的信號加入白噪聲信號,構成信噪混合體;
在本步驟中,將溶解氧原始數據看作一個時間序列信號x(t),加入白噪聲信號n(t),構成下列信噪混合體x(t);
x(t)=x(t)+k·n(t)
其中,k為比例系數,是白噪聲標準差與信號標準差的比值。
s2:將信噪混合體進行經驗模態分解,得到本征模態函數的分量和剩余分量的支量;
在本步驟中,將信號混合體進行經驗模態分解,得到下式;
其中,cj為本征模態函數,rm為剩余分量。
s3:重復n次步驟s1和步驟s2,且步驟s1中每次加入不同的白噪聲,獲取n個本征模態函數的分量和n個剩余分量的支量;
在本步驟中,每次加入不同的白噪聲ni(t),生成不同的信噪混合體xi(t);
xi(t)=x(t)+k·ni(t);
將信噪混合體xi(t)分解成各個分量:
s4:n個本征模態函數的分量的平均值為本征模態函數,n個剩余分量的支量的平均值為剩余分量。
在本步驟中,重復n次,對各分量求平均:
最后的分解結果為:
從上述描述可知,本實施例通過將信噪混合體信號進行集合經驗模態分解得到本征模態函數和剩余分量,降低了對溶解氧原始數據分解的計算量。
在一種可選實施方式中,提供了上述步驟s2的一種具體實施方式。參見圖3,上述步驟s2具體包括如下步驟:
s21:獲取含有按時間序列排序的溶解氧數據的信號的局部極大值點和局部極小值點;根據三次樣條線分別將局部極大值點連接起來形成上包絡線,局部極小值點連接起來形成下包絡線;
在本步驟中,計算時間序列信號x(t)的所有局部極大值點和局部極小值點。利用三次樣條線將所有局部極大值點連接起來形成上包絡線emax(t),將所有局部極小值點連接起來形成下包絡線emin(t)。
s22:根據局部極大值包絡線和局部極小值包絡線計算平均包絡線值;
在本步驟中,計算極大值包絡線和極小值包絡線的平均包絡線值,記作m1(t),其中,m1(t)=(emax(t)+emin(t))/2。
s23:獲取含有按時間序列排序的溶解氧數據信號的幅值與平均包絡線值的差值;
在本步驟中,計算平均包絡線值m1(t)和時間序列信號x(t)的差值,其中,h1(t)=x(t)-m1(t)。
s24:若差值符合本征模態函數條件,則差值為第一個本征模態函數的分量;若差值不符合本征模態函數條件,則對差值執行步驟s21、步驟s22和步驟s23并獲得二次差值,判斷二次差值是否符合本征模態函數條件;直至第k次的k次差值符合本征模態函數條件;
在本步驟中,判斷h1(t)是否滿足本征模態函數條件,如果滿足,則h1(t)是第一個本征模態函數分量;若不滿足,將h1(t)看作原始序列,計算極大值與極小值包絡線的均值,判斷其差值是否滿足本征模態函數條件,若不滿足重復k次,使h1k(t)滿足本征模態函數條件。記c1(t)=h1k(t),則c1(t)為第一個本征模態函數。
上述本征模態函數條件包括:1、極值點的個數和過零點的個數必須相等或最多相差一個;2、在任意時刻,有局部極大值點構成的上包絡線和局部極小值點構成的下包絡線的平均值為零。
s25:將含有按時間序列排序的溶解氧數據信號的幅值與k次差值的差數設為原始序列,重復步驟s21、步驟s22、步驟s23和步驟s24,直至差數為常數或單調函數,分解結束。
在本步驟中,將c1(t)從x(t)中分離出來,把余數r1(t)=x(t)-c1(t)當做原始序列,重復步驟s21~s24,得到n個本征模態函數,當剩余分量r(t)變為常數或單調函數,分解過程結束。原始溶解氧序列x(t)可以表示為各本征模態函數分量和剩余分量的和。
式中,ci(t)表示第i個本征模態函數分量,代表原始信號的不同尺度特征,r(t)為剩余分量,反映信號的變化趨勢。
從上述描述可知,本實施例通過將原始溶解氧序列進行經驗模態分解,獲取本征模態函數的分量以及剩余分量,降低了求取本征模態函數的分量以及剩余分量的計算量。
在一種可選實施方式中,提供了上述步驟s104的一種具體實施方式。參見圖4,上述步驟s104具體包括如下步驟:
s1041:根據最小二乘支持向量機的輸入參數維數,建立預測模型;
s1042:根據溶解氧數據的訓練樣本獲取預測模型的組合參數;
s1043:根據組合參數構建高頻項和中頻項的預測模型對高頻項和中頻項的溶解氧進行預測。
從上述描述可知,最小二乘支持向量機把求解二次規劃問題轉化成求解線性方程組的問題,用等式約束替換不等式約束,與支持向量機相比,具有計算速度快、精度高的特點,適用于小樣本預測。
在一種可選實施方式中,提供了上述步驟s105的一種具體實施方式。參見圖5,上述步驟s105具體包括如下步驟:
s1051:采用思維進化算法對bp神經網絡的初始權值和初始閾值進行優化處理,根據優化后的初始權值和初始閾值建立初始預測模型;
s1052:根據初始預測模型的輸入信號及輸出信號計算預測誤差;
s1053:根據預測誤差重新配置權值和閾值;
s1054:根據重新配置的權值和閾值建立的預測模型對低頻項進行溶解氧預測。
從上述描述可知,bp神經網絡是一種多層前饋神經網絡,輸入信號向前傳遞,從輸入層經隱含層逐層處理,直至輸出層。若輸出層得不到期望輸出,則根據預測誤差反向傳播,調整神經網絡權值和閾值,從而使預測輸出不斷逼近期望輸出。但是初始權值和閾值隨機,神經網絡初始權值的設置影響網絡預測的效率和準確度,有可能會需要多次調整才能達到最優權值和閾值,因此,為了盡可能減少調整次數,本發明采用思維進化算法優化bp神經網絡的初始權值和閾值。思維進化算法是一種通過迭代進行優化的算法,采用思維進化算法對初始權值閾值進行優化,使其盡可能地接近最優權值和閾值,即可使神經網絡模型建立比較快,比較精確。
在一種可選實施方式中,提供了上述步驟s106的一種具體實施方式。參見圖6,上述步驟s106具體包括如下步驟:
s1061:根據溶解氧數據的觀察值疊加生成新序列;
s1062:根據新序列建立微分方程模型;其中,采用最小二乘法計算微分方程模型中的待識別參數;
s1063:根據微分方程模型建立的灰色預測模型對剩余分量進行溶解氧預測。
從上述描述可知,灰色預測模型是一個單個變量預測的一階微分方程模型。灰色預測模型主要為gm(1,1)模型。
本發明提供一種水產養殖溶解氧預測方法,其中:
最小二乘支持向量機的優化問題如下:
式中,j為損失函數,ω為權重向量,c是正則化參數,ξi為經驗誤差,xi和yi分別是系統的輸入輸出向量,
式中,αi為拉格朗日乘子,分別對ω,ξi,b,αi求偏導并令其等于0,消去ω,ξi,得到如下線性方程組:
式中,i=[1,1,...,1]t,e是l×l的單位矩陣,α=[α1,α2,...,αl]t,y=[y1,y2,...,yl]t,
式中,xi問輸入樣本向量,xj為高斯核函數的中心,σ為rbf核函數的寬度參數。
灰色預測模型,gm(1,1)模型是灰色預測的核心,是一個單個變量預測的一階微分方程模型。建立gm(1,1)模型的方法是:
設時間序列x(0)有n個觀察值,x(0)={x(0)(1),x(0)(2),...,x(0)(n)},通過累加生成新序列x(1)={x(1)(1),x(1)(2),...,x(1)(n)},則gm(1,1)模型相應的微分方程為:
其中:α稱為待辨識參數,亦稱為發展系數;μ為待辨識內生變量,亦稱為灰作用。
設
其中,
于是可得到灰色預測的離散事件響應函數:
x(1)(t+1)為所得的累加的預測值,將預測值還原即為:
通過上述描述可知,本發明通過集合經驗模態方法對原始溶解氧序列進行分解,分解成不同尺度特征的各分量,分析各分量的相關性,將其分為高頻項、中頻項、低頻項和趨勢項共四部分,針對各分量的特點,分別采用最小二乘支持向量機、思維進化算法優化bp神經網絡和灰色預測模型進行預測,預測結果疊加的最終預測結果,具有較高精度。
本發明實施例二提供一種水產養殖溶解氧預測裝置,參見圖7,該預測裝置具體包括:
采集模塊,用于采集水產養殖池塘的按時間序列排序的溶解氧數據;
分解模塊,用于對溶解氧數據進行集合經驗模態分解得到本征模態函數和剩余分量;
分頻模塊,用于根據本征模態函數的波動頻率將本征模態函數分為高頻項、中頻項和低頻項;
第一預測模塊,用于通過最小二乘支持向量機對高頻項和中頻項進行建模并進行溶解氧預測;
第二預測模塊,用于通過思維進化算法優化bp神經網絡對低頻項進行建模并進行溶解氧預測;
第三預測模塊,用于通過灰色預測模型對剩余分量進行建模并進行溶解氧預測;
輸出模塊,用于將最小二乘支持向量機、思維進化算法優化bp神經網絡和灰色預測模型三者的預測結果疊加獲取水產養殖的溶解氧的預測值。
所述分解模塊具體包括:
信號生成單元,用于將含有按時間序列排序的溶解氧數據的信號加入白噪聲信號,構成信噪混合體;
經驗模態單元,用于將信噪混合體進行經驗模態分解,得到本征模態函數的分量和剩余分量的支量;
計算單元,用于計算n次信號生成單元和經驗模態單元輸出信號,且步驟信號生成單元中每次加入不同的白噪聲,獲取n個本征模態函數的分量和n個剩余分量的支量;
輸出單元,用于n個本征模態函數的分量的平均值為本征模態函數,n個剩余分量的支量的平均值為剩余分量。
所述第一預測模塊,包括:
第一建模單元,用于根據最小二乘支持向量機的輸入參數維數,建立預測模型;
第一訓練單元,用于根據溶解氧數據的訓練樣本獲取預測模型的組合參數;
第一預測單元,用于根據組合參數構建高頻項和中頻項的預測模型對高頻項和中頻項的溶解氧進行預測。
所述第二預測模塊,包括:
第二建模單元,用于采用思維進化算法對bp神經網絡的初始權值和初始閾值進行優化處理,根據優化后的初始權值和初始閾值建立初始預測模型;
第二訓練單元,用于根據初始預測模型的輸入信號及輸出信號計算預測誤差;
配置單元,用于根據預測誤差重新配置權值和閾值;
第二預測單元,用于根據重新配置的權值和閾值建立的預測模型對低頻項進行溶解氧預測。
從上述描述可知,本發明提供的一種水產養殖溶解氧預測裝置,具有結構簡單,使用方便;采用不同的模塊對分成的高頻項、中頻項、低頻項和剩余分量分別進行預測,實現對水質溶解氧數據的精準預測。
以上實施例僅用于說明本發明的技術方案,而非對其限制;盡管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的精神和范圍。