楊 帆,周 敏,戴超男,曹 軍
(1.聯想數據智能應用實驗室,四川 成都 610041;2.四川理工學院 過程裝備與控制工程四川省高校重點實驗室,四川 自貢 643000;3.華東理工大學 機械與動力工程學院,上海 200237)
催化裂化是重質油在酸性催化劑存在下,在500 ℃左右、1×105~3×105Pa的壓力下發生以裂化反應為主的一系列化學反應生成輕質油、氣體和焦炭的過程。目前,我國催化裂化裝置生產的柴油和汽油約占成品柴油和汽油總量的30%和70%左右,已經成為重油加工的最重要方法之一[1-5]。催化裂化的工藝過程和產品收率優化的建模分析一直是石油加工領域研究的熱點和難點。目前常用的催化裂化過程建模方法有機理建模法[6-8]和統計建模法[9-11]。由于催化裂化是一個高度非線性和相互強關聯的系統,其中原料油性質、反應再生催化劑性質,以及反應操作工況條件等因素都會影響到反應過程和產物收率,使用傳統的機理模型很難全面地去描述,大數據技術則是解決這一問題的有力工具。
目前,大數據技術正處于其應用的高速發展期,并已經在電子商務[12]、電力[13]、航空[14]以及醫療[15]等領域取得了巨大的成功。隨著石化行業生產過程的自動化控制水平日益提高和工藝流程控制系統的不斷完善,各種原料數據、催化劑性能數據以及操作工況參數等都能從裝置的數據庫平臺中實時采集。這些數據記錄了反應過程的特征、性能和變化,反映了反應過程的本質,大大改進了原來數據收集的不完整。已經積累的海量過程數據為數據挖掘技術在石化領域的應用提供了良好的基礎條件。將數據挖掘技術應用于石化反應過程,建立完善的統計學分析模型,可縮短新工藝的開發研究周期、優化工程設計方案、優化裝置操作和實現裝置的在線優化,多角度全方位地對反應過程及其影響機制進行分析,從而可進一步提高原料利用率和所需產品的產率,具有傳統機理分析優化方法無法比擬的優勢[16]。這一優勢在催化裂化工藝操作工況的優化和產品收率的預測方面體現的更為明顯。
目前,已有研究者將神經網絡、支持向量機等人工智能算法應用于優化催化裂化工藝。Zahedi等[17]使用誤差反向傳播神經網絡和徑向基神經網絡建立了催化重整的預測模型,并采用單變量優化方法優化了溫度和壓力等工藝參數,使汽油收率從80%增加到82%。李鵬等[18]在中國石化開發的煉油技術分析與遠程診斷平臺上,運用大數據數據處理技術和積累的海量的催化運行數據進行數據挖掘與分析,對催化裂化裝置報警、結焦等問題進行深入探索研究與分析,解決了催化裂化裝置報警問題、結焦問題和收率問題,從而進一步提升了催化裂化裝置運行水平。陳露[19]通過整理大量原油評價數據,建立了原油性質和催化裂化反應產物分布數據之間的模型,并采用化學計量學校正了該模型,結果表明所建立的原油評價模型具有較好的適用性。孔金生等[20]對催化裂化數據進行了預處理并建立了粗汽油干點的神經網絡模型,結果證明該模型具有可靠性。方偉剛[21]以中國石化九江分公司催化裂化裝置提供的實時過程數據為基礎,進行了產品收率優化的研究,建立了合適的原料油性質聚類模型和產品收率神經網絡模型,并使用優化算法對操作條件進行了優化。
筆者以某煉化公司催化裂化裝置提供的實時過程數據為基礎,建立了合適的原料油性質聚類模型和產品收率預測模型,然后使用優化算法對操作條件進行優化。計算分析的結果有助于進一步提升催化裂化裝置的汽油收率,進而增加企業經濟效益,并為工業操作提供可靠的技術支持。
筆者使用的數據均采集自某石化企業的LIMS(Laboratory information management system)及DCS(Distributed control system)系統。通過LIMS系統可采集到原料油和再生催化劑性質的相關數據,其分析頻次為1次/周。為了采集到足夠多的樣本,LIMS數據采集時間段從2016年8月4日至2018年3月20日共近2年。通過DCS系統可采集到操作變量和系統物料平衡數據,每隔15 s記錄1次,裝置數據采集時間段從2017年10月21日至2018年 4月25日共6個月。將DCS和LIMS的數據按“時間戳[分割符]指標值”的格式整理,每條數據由時間戳和指標值兩個字段構成。為了方便進一步清洗以及計算,將所有數據按時間戳升序進行排序。
由于一些客觀的裝置條件以及人為因素,例如數據采集系統出現問題、數據存儲/傳輸過程中發生錯誤等,采集到的數據可能存在部分數據缺失、重復、不完整、噪音、異常等情況;除此之外,原始數據中還存在部分冗余數據。為了保證訓練數據的正確性和有效性,同時提高模型運算的效率,需要對數據進行清洗。對于不同類型的數據異常,相應的清洗方法如下:
①數據格式錯誤。每條數據必須滿足給定的格式,其中第一個字段是timestamp類型,第二個字段是float類型??梢灾苯觿h除格式錯誤的數據。
②數據值異常。計算每個指標的均值μ和標準差σ,使用萊特準則,將(μ±3σ)范圍外的數據定義為異常值,并使用時間臨近的數據做加權平均作為替代。
③數據重復。同一指標的數據中可能存在多條相同的時間戳記錄,需要選擇其中合法的數值并取均值。
④數據缺失。缺少某些應有時刻的數據,可以將缺省數據點看作異常值,使用時間臨近的數據做加權平均。
針對不同的分析指標,其監控采集頻率可能不同。為了便于數據分析與計算,需要將這些數據在時間上對齊:即對所有分析指標使用統一的時間間隔。通過分析數據的特點,筆者將60 min作為參考時間間隔。對于采集時間間隔小于60 min的數據,需要做采樣處理,通過設置60 min大小的時間窗口,取該時間窗口里的數值的均值。對于采集時間間隔大于60 min的參數,需要做插值處理。根據不同系統的采集頻率,一般DCS系統采集到的數據需要進行采樣處理,而由LIMS系統收集到的數據則需要進行插值處理。筆者采用3種插值方法:
①直接使用前一次的測量值插值。
②線性插值。
③二階B樣條插值。
以監測點指標數據“混合原料密度(20 ℃)”在2016年11月至2017年3月30日之間的數據為例,該數據的原始分布如圖1所示。
按照以上思路分別使用3種插值方法計算,結果數據如圖2、3及4所示。其中:圖2為直接使用前一次的測量值插值所得數據;圖3為線性插值處理結果;圖4為二階B樣條插值處理結果。3種插值方法都可以彌補時間間隔內的缺省值,且處理得到的結果相似。

圖3 對圖1數據線性差值處理結果Fig.3 Results of processing linear interpolation for data of Fig.1

圖4 對圖1數據二階B樣條插值處理結果Fig.4 Results of processing quadratic B-spline interpolation for data of Fig.1
利用機器學習模型預測產品收率的方法已經被一些文獻提及或使用,其中較大比例采用神經網絡構建模型[20]。神經網絡的優點在于擬合能力非常強,理論上能逼近任意非線性映射,且自學習與自適應性強。另一方面,由于在神經網絡模型中有較多超參數需要確認,往往需要較長時間的反復調參,才能取得好的效果;同時,其可解釋性較差,不利于研究輸入向量各分量之間以及它們與輸出的相關性。
根據以上分析,筆者決定采用另一種擬合能力較強的模型:由多棵決策樹構成的集成學習模型。樹模型對于真實分布的擬合效果較好,具有一定的可解釋性,且可以用于特征篩選。多決策樹模型的典型代表是使用bagging方式集成的隨機森林模型和通過boosting方式集成的梯度提升決策樹(Gradient boosting decision tree,GBDT)模型。通過對比這兩種模型在實際數據集上的應用,發現GBDT在產品收率上的表現更好。因此,本研究選擇使用GBDT構建預測模型。
GBDT是一種迭代的決策樹算法,通過采用加法模型(即基函數的線性組合),不斷減小訓練過程產生的殘差來完成數據分類或者回歸。在訓練過程中,每輪迭代開始時,計算損失函數的負梯度在當前模型的值,將其作為殘差的估計去擬合一個回歸樹;每次迭代都會生成一顆新的決策樹,將每輪訓練得到的樹加權求和,可以得到輸出的最終模型。GBDT的主要特點,即是通過在每輪訓練中讓損失函數盡可能快地減小,以便盡快地收斂達到局部最優解或者全局最優解。
篩選DCS與LIMS系統中與汽油產率正負相關性較強的指標是一個優化模型特征選擇的過程。它們的測量值變化與汽油收率線性相關系數較高,一定程度上可以更好地反映或逼近真實收率的變化趨勢,可能是影響汽油收率的關鍵指標。在模型的構建中,考慮將這些潛在的關鍵指標作為特征,可以有效降低訓練數據集的維度,同時提高模型的學習性能。
采集到的LIMS和DCS數據中包括近2000個分析指標,其中大部分不適用于產品收率預測,因此需要對已有的分析指標進行篩選。首先,使用大數據分析的方法,篩選出與產品收率相關性較高的指標。使用Pearson系數作為考察相關性的依據,將采集到的指標與汽油收率按60 min的時間粒度,依照2.2節中介紹的方法進行時間對齊后,計算Pearson相關系數。其中,DCS數據中與汽油收率正相關性較高的27個指標如表1所示,負相關性較高的22個指標如表2所示。
對于LIMS系統中的數據,由于無法明確LIMS數據中各個指標在監測間隔里的變化過程,基于現有數據無法比較3種不同插值方法的優劣。考慮到僅采用一種插值方法得到的數據可能有一定偏差,筆者選擇同時使用3種插值方法分別處理數據。LIMS系統中計算得到的正相關性較強的21個指標如表3所示,負相關性較強的25個指標如表4所示。
除此之外,由于催化裂化反應的特性,可以從工業經驗角度考慮,篩選出影響產品收率的關鍵指標作為模型特征。根據催化裂化產品的生成過程,并結合工業經驗,可以篩選出部分線性相關性不高,卻對產品收率有重要影響的經驗指標,包括提升管反應器出口溫度、原料中飽和烴與膠質含量、汽提蒸汽流量、催化劑活性指數等[20]。將這些重要指標作為參照指標,計算其與產品收率的相關性作為參照相關性,用于從以上正負相關性較強的指標中篩選出相關性大于或接近參照相關性的指標。作為參考的重要因素的相關性如表5、6所示。
經過篩選的指標的因變量需要進行人工去除。整理篩選出的正負相關性較強指標,并結合工業經驗參考指標,共同作為候選原始特征。通過對所得的原始特征做尺度變換、多項式交叉、差分等特征工程處理,得到可以應用于GBDT算法模型的新的特征。

表1 DCS數據中與汽油收率正相關性較高的指標Table 1 Factors with high positive correlations for gasoline yield in DCS data

表2 DCS數據中與汽油收率負相關性較高的指標Table 2 Factors with high negative correlations for gasoline yield in DCS data

表3 LIMS數據中與汽油收率正相關性較高的指標Table 3 Factors with high positive correlations for gasoline yield in LIMS data

表4 LIMS數據中與汽油收率負相關性較高的指標Table 4 Factors with high negative correlations for gasoline yield in LIMS data

表5 DCS數據中參照指標與汽油收率的相關性Table 5 The correlations between reference factors and gasoline yield in DCS data

表6 LIMS數據中參照指標與汽油收率的相關性Table 6 The correlations between reference factors and gasoline yield in LIMS data
目前普遍用于構建產品收率預測模型的算法都為神經網絡算法,少有研究使用樹類模型對收率進行預測。相比之下,樹類模型的可解釋性與對模型特征的篩選作用,使得其在解釋特征在模型中的重要性與工業優化方面更有潛力與優勢。筆者選擇樹類模型中的GBDT算法構建預測模型,模型構建的框架如下所示,其中模型輸入為訓練數據集T={(x1,y1),(x2,y2),…,(xN,yN)},xi∈Rn,yi∈R,迭代的次數為t,損失函數為L(y,f(x)),輸出GBDT模型:
(1)特征選擇:根據特征的權重w從特征集中抽取p比例的特征。
(2)初始化基學習器:
(1)
(3)對于迭代次數t=1,2,…,T:
a.對訓練樣本i=1,2,…,N,計算負梯度(rti):
(2)
b.利用rt擬合1個回歸樹,得到第t棵回歸樹 (Treet),并對于葉子區域計算最佳擬合值。
c.更新模型ft(x)=ft-1(x)+Treet。
(4)得到模型:
(3)
GBDT算法的主要特點在于在訓練中將損失函數的負梯度在當前模型的值作為殘差估計,并利用線性搜索估計回歸樹葉結點區域的值,使損失函數最小化,從而更新回歸樹并得到最終的模型。它的每一次迭代都會在殘差減少的梯度方上建立新模型,因此GBDT算法會更關注梯度比較大的樣本。
筆者采用GBDT模型的開源模塊實現lightGBM回歸方法進行學習。為了保證篩選出的所有特征指標都有合理的數據,截取2017年10月21日至2018年3月20日的數據作為整體數據集,選擇前4個月的特征數據和實測收率值作為訓練樣本,剩余的數據作為預測樣本用以驗證模型的準確性。通過經驗與局部網格搜索的方式調整其超參數并對比其交叉驗證的結果,最終使用平均絕對誤差MAE作為目標函數進行訓練,設置回歸樹棵數為106,對應學習率為0.065,其余參數使用默認數值。其中,可由式(4)計算MAE:
(4)
使用現有采集監控數據,對相對于訓練集的未來時間節點進行預測,并對比預測值與真實值,可以有效檢驗構建模型的擬合程度。如果需要對真實未來的產品收率進行預測,同樣需要對相同時間段內的指標數據進行采集。

(5)
2016年9月至2017年11月之間真實汽油收率和處理掉其中的異常值后汽油收率的分布如圖5所示,圖6為圖5(b)的數值分布。由圖6可以看出,真實汽油收率主要分布在47%左右,基本呈現左右平衡的態勢,近似正態分布,且分布相對較為集中,說明汽油收率的整體輸出范圍較小。在這種情況下,即使使用汽油收率的均值來進行預測,其準確率也能夠達到98%左右。

圖5 2016年9月至2017年11月之間實際的汽油收率和去掉異常值后的汽油收率Fig.5 Actual gasoline yield and gasoline yield without outliers between September 2016 and November 2017(a)Actual gasoline yield;(b)Gasoline yield without outliers

圖6 對圖5(b)的統計收率分布Fig.6 Statistical yield distribution for Fig.5(b)
針對真實汽油收率的整體輸出特點,通常意義的回歸準確率,并不能很好地反映預測模型的擬合效果。結合原評估方法,考慮去掉收率的均值對變化程度的影響來考察模型對收率變化的預測能力。筆者選擇同時使用決定系數R2作為評估標準,R2是對模型進行回歸后,評價回歸模型系數的擬合優度,其計算方法如式(6)所示。
(6)
R2的取值范圍一般為負無窮到1,預測值與真實值的殘差平方和越小,該值越接近1,表明預測值對真實值的擬合優度越大,可解釋程度越高。該標準可以反映模型輸出對真實產率的擬合程度。與Pearson相關系數不同的是,相關系數一般用來描述變量間的線性關系,其絕對值越接近1,表明變量間的相關性越顯著;但R2可以用于描述非線性的相關關系。當R2小于0的時候,需要借助其他評估方法來評價擬合程度。
利用GBDT算法構造的預測模型對催化裂化的汽油收率進行預測,得到的汽油收率預測結果與實際工業數據的對比如圖7所示。由圖7可以看出,模型的預測值總體趨勢與工業數據吻合較好,少有出現偏差較大的預測值。
由式(5)和式(6)計算預測結果的準確率和R2系數,并與參考準確率對比分析。計算得到,預測模型的準確率達到98.9%,明顯高于98%即參考準確率,驗證了該模型的可行性和有效性;預測模型的R2系數為0.236,而該指標的參考值為0,表明預測模型對汽油收率的擬合程度較好,分析得到的特征指標可以用來解釋汽油收率的變化程度。同時,根據以上結果,由式(4)計算平均絕對誤差(MAE)。

圖7 利用GBDT算法得到的汽油收率預測結果與實際工業數據的對比Fig.7 Comparisons between gasoline yield predictions of GBDT and actual gasoline yield
計算可得,基于模型計算得到的汽油產率預測值和實際值的平均絕對誤差為0.531%。因此,無論是從預測結果的準確性還是擬合度上來看,由GBDT構建的預測模型對汽油產率能夠起到良好的預測效果。
基于某石化企業的LIMS及DCS系統中的工業生產數據,通過分析監控指標與實際汽油收率的相關性,篩選出了相關性高的分析指標,進一步明確了影響催化裂化裝置汽油收率的因素。在此基礎上,利用梯度提升決策樹GBDT算法構建了催化裂化汽油收率的預測模型,并預測了相應的汽油收率。結果發現,由GBDT算法構建的汽油收率預測模型預測結果的準確率為98.9%,R2系數為0.236,平均絕對誤差為0.531%。模型預測結果與實際汽油收率相比,誤差率小于1%,表明構建的模型能精確預測催化裂化裝置中汽油等產品收率,對裝置操作工況的優化改進具有良好的指導意義,有助于在實際生產中進一步提升催化裂化裝置的經濟性。