大慶油田設(shè)計院
基于改進(jìn)AFSA—BP算法的油水界面軟測量
時晟楠大慶油田設(shè)計院
人工魚群算法具有較強的全局收斂性和較強的魯棒性,且對初值不敏感。將AFSA算法和BP算法相結(jié)合,不僅能延續(xù)神經(jīng)網(wǎng)絡(luò)的適應(yīng)能力,而且能夠加速收斂到目標(biāo)值并提高神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)能力。運用改進(jìn)的AFSA算法優(yōu)化BP算法并結(jié)合聯(lián)合站的工藝需求,得出油水界面高度變化率的軟測量模型。數(shù)值結(jié)果表明,模型具有較高的擬合精度和較強的泛化能力,將油水界面高度的硬件測量發(fā)展到軟件在線測量,通過實驗仿真結(jié)果驗證了所研究算法的有效性。
油水界面;人工魚群算法;BP神經(jīng)網(wǎng)絡(luò);軟測量
原油中經(jīng)常含有大量的水、鹽和泥沙類機(jī)械雜質(zhì)等,這些物質(zhì)會增大液流的體積流量,降低設(shè)備和管路的有效利用率,給原油的集輸和煉制帶來很大的麻煩。在線測量油水界面對工程現(xiàn)場意義重大。
軟測量技術(shù)的核心問題是建立軟測量模型以實現(xiàn)二次變量對主導(dǎo)變量的最佳估計[1-2]。建立軟儀表的方法很多,如線性估計、機(jī)理推導(dǎo)、回歸分析和神經(jīng)網(wǎng)絡(luò)方法等。BP神經(jīng)網(wǎng)絡(luò)通過現(xiàn)場實驗采集樣本數(shù)據(jù),然后訓(xùn)練和學(xué)習(xí)神經(jīng)網(wǎng)絡(luò),從而建立油水界面測量模型。人工魚群算法具有較強的全局收斂性和較強的魯棒性,且對初值不敏感。將AFSA算法和BP算法相結(jié)合,不僅能延續(xù)神經(jīng)網(wǎng)絡(luò)的適應(yīng)能力,而且能夠加速收斂到目標(biāo)值并提高神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)能力[3]。
BP算法廣泛應(yīng)用于函數(shù)擬合、自動控制、信號處理等領(lǐng)域,是人工神經(jīng)網(wǎng)絡(luò)經(jīng)典且易于應(yīng)用的部分。BP網(wǎng)絡(luò)數(shù)據(jù)信息從輸入層經(jīng)過隱含層流向輸出層,是一種按誤差反向傳播算法訓(xùn)練的多層前饋網(wǎng)絡(luò)。
一條人工魚的當(dāng)前活動位置為X=(x1,x2,???,xn),魚的視野范圍為visual,它在某時刻v的即時位置可表示為Xv=,,???),如果當(dāng)前位置的食物濃度低于時刻v位置的食物濃度,則由當(dāng)前位置向時刻v的位置方向移動一個步長Step,隨即到達(dá)位置Xnext;如果當(dāng)前位置的食物濃度高于時刻v的位置Xv處,則不采用位置Xv的方向并搜尋視野內(nèi)的其他位置。隨著搜尋次數(shù)的增加,人工魚對視野范圍內(nèi)的信息認(rèn)知更加全面,從而對其周圍環(huán)境有立體清晰的認(rèn)識。人工魚不需要一一遍歷狀態(tài)多的環(huán)境,不但減小運算量、節(jié)省搜尋時間,而且一定的隨機(jī)性對跳出局部極值有所幫助,對快速搜尋全局最優(yōu)解有益。Xn1,Xn2為視野范圍內(nèi)兩條魚的位置。
人工魚尋優(yōu)過程可由式(1)、式(2)表示。其中,r是[-1,1]區(qū)間的隨機(jī)數(shù)。
用AFSA算法將神經(jīng)網(wǎng)絡(luò)權(quán)值訓(xùn)練后,將最優(yōu)權(quán)值代入BP網(wǎng)絡(luò)作為初始權(quán)值,建立油水界面變化率的預(yù)測模型。
利用改進(jìn)的人工魚群算法優(yōu)化神經(jīng)網(wǎng)絡(luò)權(quán)值閾值,再利用神經(jīng)網(wǎng)絡(luò)進(jìn)行分類。
(1)根據(jù)輸入、輸出訓(xùn)練樣本集,確定BP神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)。
(2)確定人工魚群算法基本參數(shù)。通過構(gòu)造人工魚來模擬魚群的三個基本行為,以實現(xiàn)尋優(yōu)。
第一步,確定魚群規(guī)模fishnum。最大迭代次數(shù)為MAXGEN,最多試探次數(shù)為try_number,感知距離為visual,擁擠度因子為δ,移動的最大步長為Step。
第二步,采用變步長方式,人工魚根據(jù)當(dāng)前的環(huán)境惡劣程度調(diào)整移動的步長。
其中FCi為人工魚當(dāng)前的食物濃度,F(xiàn)Cm為視野范圍內(nèi)的最大食物濃度,F(xiàn)Cw為視野范圍內(nèi)的最低食物濃度。
第三步,自動適應(yīng)魚群的聚集現(xiàn)象,感知距離visual隨迭代次數(shù)的增加逐漸變小。視野自適應(yīng)公式如下
其中Vmax和Vmin分別是感知距離visual的最大值和最小值,gen是當(dāng)前迭代次數(shù)。
(3)計算網(wǎng)絡(luò)實際輸出與期望輸出的差值,尋找出一組網(wǎng)絡(luò)權(quán)值使得網(wǎng)絡(luò)誤差達(dá)到最小,取均值誤差E作為目標(biāo)函數(shù),即
式中N為網(wǎng)絡(luò)訓(xùn)練樣本集輸入、輸出樣本對個數(shù);n為輸出層節(jié)點數(shù);yjk,yˉjk為當(dāng)輸入第k個樣本時,第j個輸出節(jié)點的期望輸出與實際輸出。
每個人工魚的食物濃度函數(shù)值為
(4)每條人工魚執(zhí)行游動,并且比較游動后食物濃度函數(shù)值大小,以判斷三種行為中應(yīng)執(zhí)行的最佳游動行為。
第一步,進(jìn)行魚群初始化。人工魚群中的每條人工魚均是[-1,1]范圍內(nèi)的一個隨機(jī)實數(shù)數(shù)組。
第二步,魚群覓食行為。一條人工魚當(dāng)前位置活動狀態(tài)為Xi,在視野范圍內(nèi)隨機(jī)位置選擇活動狀態(tài)Xj。若FCi<FCj,則向該隨機(jī)方向移動一個步長Step;與此相反則重新選擇Xj,繼續(xù)比較食物濃度大小是否滿足前進(jìn)條件。覓食按式(7)進(jìn)行。
第三步,魚群群聚行為。人工魚搜索當(dāng)前鄰域內(nèi)的伙伴數(shù)目nf及中心位置Xc,若>δFCi,則Xi|next=XC+rand()?Step即向著人工魚同伴的中心位置方向移動一步;反之則執(zhí)行覓食。
第四步,魚群的追尾行為。人工魚搜索當(dāng)前鄰域內(nèi)的伙伴數(shù)目nf及Yj最大的伙伴Xj,若即向著人工魚同伴方向移動一步;反之則執(zhí)行覓食。
第五步,魚群的隨機(jī)行為。在人工魚視野范圍內(nèi)隨機(jī)方向選擇一個狀態(tài),向此隨機(jī)方向前進(jìn),遵循式如下
(5)輸出神經(jīng)網(wǎng)絡(luò)初始權(quán)值,并執(zhí)行BP網(wǎng)絡(luò)循環(huán)。
以沉降罐原油來液流量、油出口流量、水出口流量和原油含水率為輸入節(jié)點,油水界面的變化率為輸出節(jié)點,建立油水界面變化率的預(yù)測模型。其中AFSA算法用于確定BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練參數(shù)。
魚群規(guī)模fishnum為70,最大迭代次數(shù)MAXGEN為500,最多試探次數(shù)try_number為100,感知距離visual為1,最大感知距離Vmax為1,最小感知距離Vmin為0.3,最大步長Step為0.5,擁擠度因子δ為0.618。
仿真結(jié)果如圖1所示,圖中綠色虛線表示優(yōu)化后的BP神經(jīng)網(wǎng)絡(luò)模型誤差值,橫坐標(biāo)為測試網(wǎng)絡(luò)所用數(shù)據(jù),共101組,縱坐標(biāo)為沉降過程中油水界面高度變化率。
圖1 軟測量模型的仿真結(jié)果
用Matlab對輸出數(shù)據(jù)進(jìn)行分析,得出軟測量模型性能指標(biāo)。其中最大絕對誤差為0.0714,均方差為0.0227。分析仿真結(jié)果及性能指標(biāo)可知,AFSA算法優(yōu)化后的BP網(wǎng)絡(luò)得出的預(yù)測輸出與實際輸出整體上吻合,模型可適用于油田現(xiàn)場控制。
運用改進(jìn)的AFSA算法優(yōu)化BP算法并結(jié)合聯(lián)合站的工藝需求,得出油水界面高度變化率的軟測量模型。結(jié)果表明,模型具有較高的擬合精度和較強的泛化能力,將油水界面高度的測量由硬件測量發(fā)展到軟件在線測量,通過實驗仿真結(jié)果驗證了所研究算法的有效性。
[1]陳通.穩(wěn)定原油脫水工藝的措施[J].油氣田地面工程,2010,29(2):83-84.
[2]李朝陽,馬貴陽,陳林,等.原油脫水技術(shù)數(shù)值研究[J].天然氣與石油,2011,29(5):68-71.
[3]李慧,喬光輝,張小龍,等.高效三相分離器在姬塬油田原油脫水中的應(yīng)用[J].石油工程建設(shè),2011,37(4):67-70.
(欄目主持 楊軍)
10.3969/j.issn.1006-6896.2014.7.025