大慶油田設計院
基于改進AFSA—BP算法的油水界面軟測量
時晟楠大慶油田設計院
人工魚群算法具有較強的全局收斂性和較強的魯棒性,且對初值不敏感。將AFSA算法和BP算法相結合,不僅能延續神經網絡的適應能力,而且能夠加速收斂到目標值并提高神經網絡學習能力。運用改進的AFSA算法優化BP算法并結合聯合站的工藝需求,得出油水界面高度變化率的軟測量模型。數值結果表明,模型具有較高的擬合精度和較強的泛化能力,將油水界面高度的硬件測量發展到軟件在線測量,通過實驗仿真結果驗證了所研究算法的有效性。
油水界面;人工魚群算法;BP神經網絡;軟測量
原油中經常含有大量的水、鹽和泥沙類機械雜質等,這些物質會增大液流的體積流量,降低設備和管路的有效利用率,給原油的集輸和煉制帶來很大的麻煩。在線測量油水界面對工程現場意義重大。
軟測量技術的核心問題是建立軟測量模型以實現二次變量對主導變量的最佳估計[1-2]。建立軟儀表的方法很多,如線性估計、機理推導、回歸分析和神經網絡方法等。BP神經網絡通過現場實驗采集樣本數據,然后訓練和學習神經網絡,從而建立油水界面測量模型。人工魚群算法具有較強的全局收斂性和較強的魯棒性,且對初值不敏感。將AFSA算法和BP算法相結合,不僅能延續神經網絡的適應能力,而且能夠加速收斂到目標值并提高神經網絡學習能力[3]。
BP算法廣泛應用于函數擬合、自動控制、信號處理等領域,是人工神經網絡經典且易于應用的部分。BP網絡數據信息從輸入層經過隱含層流向輸出層,是一種按誤差反向傳播算法訓練的多層前饋網絡。
一條人工魚的當前活動位置為X=(x1,x2,???,xn),魚的視野范圍為visual,它在某時刻v的即時位置可表示為Xv=,,???),如果當前位置的食物濃度低于時刻v位置的食物濃度,則由當前位置向時刻v的位置方向移動一個步長Step,隨即到達位置Xnext;如果當前位置的食物濃度高于時刻v的位置Xv處,則不采用位置Xv的方向并搜尋視野內的其他位置。隨著搜尋次數的增加,人工魚對視野范圍內的信息認知更加全面,從而對其周圍環境有立體清晰的認識。人工魚不需要一一遍歷狀態多的環境,不但減小運算量、節省搜尋時間,而且一定的隨機性對跳出局部極值有所幫助,對快速搜尋全局最優解有益。Xn1,Xn2為視野范圍內兩條魚的位置。
人工魚尋優過程可由式(1)、式(2)表示。其中,r是[-1,1]區間的隨機數。

用AFSA算法將神經網絡權值訓練后,將最優權值代入BP網絡作為初始權值,建立油水界面變化率的預測模型。
利用改進的人工魚群算法優化神經網絡權值閾值,再利用神經網絡進行分類。
(1)根據輸入、輸出訓練樣本集,確定BP神經網絡的拓撲結構。
(2)確定人工魚群算法基本參數。通過構造人工魚來模擬魚群的三個基本行為,以實現尋優。
第一步,確定魚群規模fishnum。最大迭代次數為MAXGEN,最多試探次數為try_number,感知距離為visual,擁擠度因子為δ,移動的最大步長為Step。
第二步,采用變步長方式,人工魚根據當前的環境惡劣程度調整移動的步長。

其中FCi為人工魚當前的食物濃度,FCm為視野范圍內的最大食物濃度,FCw為視野范圍內的最低食物濃度。
第三步,自動適應魚群的聚集現象,感知距離visual隨迭代次數的增加逐漸變小。視野自適應公式如下

其中Vmax和Vmin分別是感知距離visual的最大值和最小值,gen是當前迭代次數。
(3)計算網絡實際輸出與期望輸出的差值,尋找出一組網絡權值使得網絡誤差達到最小,取均值誤差E作為目標函數,即

式中N為網絡訓練樣本集輸入、輸出樣本對個數;n為輸出層節點數;yjk,yˉjk為當輸入第k個樣本時,第j個輸出節點的期望輸出與實際輸出。
每個人工魚的食物濃度函數值為

(4)每條人工魚執行游動,并且比較游動后食物濃度函數值大小,以判斷三種行為中應執行的最佳游動行為。
第一步,進行魚群初始化。人工魚群中的每條人工魚均是[-1,1]范圍內的一個隨機實數數組。
第二步,魚群覓食行為。一條人工魚當前位置活動狀態為Xi,在視野范圍內隨機位置選擇活動狀態Xj。若FCi<FCj,則向該隨機方向移動一個步長Step;與此相反則重新選擇Xj,繼續比較食物濃度大小是否滿足前進條件。覓食按式(7)進行。

第三步,魚群群聚行為。人工魚搜索當前鄰域內的伙伴數目nf及中心位置Xc,若>δFCi,則Xi|next=XC+rand()?Step即向著人工魚同伴的中心位置方向移動一步;反之則執行覓食。
第四步,魚群的追尾行為。人工魚搜索當前鄰域內的伙伴數目nf及Yj最大的伙伴Xj,若即向著人工魚同伴方向移動一步;反之則執行覓食。
第五步,魚群的隨機行為。在人工魚視野范圍內隨機方向選擇一個狀態,向此隨機方向前進,遵循式如下

(5)輸出神經網絡初始權值,并執行BP網絡循環。
以沉降罐原油來液流量、油出口流量、水出口流量和原油含水率為輸入節點,油水界面的變化率為輸出節點,建立油水界面變化率的預測模型。其中AFSA算法用于確定BP神經網絡的訓練參數。
魚群規模fishnum為70,最大迭代次數MAXGEN為500,最多試探次數try_number為100,感知距離visual為1,最大感知距離Vmax為1,最小感知距離Vmin為0.3,最大步長Step為0.5,擁擠度因子δ為0.618。
仿真結果如圖1所示,圖中綠色虛線表示優化后的BP神經網絡模型誤差值,橫坐標為測試網絡所用數據,共101組,縱坐標為沉降過程中油水界面高度變化率。

圖1 軟測量模型的仿真結果
用Matlab對輸出數據進行分析,得出軟測量模型性能指標。其中最大絕對誤差為0.0714,均方差為0.0227。分析仿真結果及性能指標可知,AFSA算法優化后的BP網絡得出的預測輸出與實際輸出整體上吻合,模型可適用于油田現場控制。
運用改進的AFSA算法優化BP算法并結合聯合站的工藝需求,得出油水界面高度變化率的軟測量模型。結果表明,模型具有較高的擬合精度和較強的泛化能力,將油水界面高度的測量由硬件測量發展到軟件在線測量,通過實驗仿真結果驗證了所研究算法的有效性。
[1]陳通.穩定原油脫水工藝的措施[J].油氣田地面工程,2010,29(2):83-84.
[2]李朝陽,馬貴陽,陳林,等.原油脫水技術數值研究[J].天然氣與石油,2011,29(5):68-71.
[3]李慧,喬光輝,張小龍,等.高效三相分離器在姬塬油田原油脫水中的應用[J].石油工程建設,2011,37(4):67-70.
(欄目主持 楊軍)
10.3969/j.issn.1006-6896.2014.7.025