本發(fā)明涉及餾份油加氫裂化工藝研究技術領域,具體涉及一種隨機種子數(shù)預處理擬牛頓后處理并行遺傳集總動力學方法及系統(tǒng)。
背景技術:
石油化工的重要任務之一是通過加氫反應將低品質(zhì)、高雜質(zhì)含量高干點的大分子的原油或其預處理餾份油進行加工,以生成高品質(zhì)、低雜質(zhì)含量、高附加值的各類餾份油產(chǎn)品及下游石油化工產(chǎn)品的原料。由于世界原油價格、成品油價格以及下游石油石化產(chǎn)品的價格和需求量不斷巨幅波動,因此,煉油企業(yè)必須能夠?qū)κ蜔捴七^程的工藝參數(shù)進行實時有效的調(diào)整,以適應原油、成品油以及下游石油化工產(chǎn)品的價格以及需求量的變化要求。
煉油企業(yè)對石油煉制過程的工藝參數(shù)進行實時有效調(diào)整的前提依賴于對加氫過程的深刻認識以及與該過程相關的相對準確的數(shù)學模式的確立和求解。
目前所提及的集總動力學模型對于油品的餾份劃分相對簡單,難以高精度的描述實際工業(yè)反應及工藝實驗所涉及的原料餾份以及產(chǎn)品餾份對于切割溫度的復雜分布。進而使得采用不同的切割方案的餾份油切割結(jié)果與計算結(jié)果的誤差很大。
技術實現(xiàn)要素:
針對現(xiàn)有技術中的缺陷,本發(fā)明提供一種隨機種子數(shù)預處理擬牛頓后處理并行遺傳集總動力學方法及系統(tǒng),大大減少了采用不同的切割方案的餾份油切割結(jié)果與計算結(jié)果的誤差。
第一方面,本發(fā)明提供一種隨機種子數(shù)預處理擬牛頓后處理并行遺傳集總動力學方法,包括:
S1、根據(jù)餾份油質(zhì)量分率數(shù)據(jù)以及集總動力學方程,確定加氫裂化反應速率矩陣的所有M個矩陣元數(shù)據(jù),所述餾份油質(zhì)量分率數(shù)據(jù)包括在不同工藝條件下對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)和對所述原料油進行計算擬合的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù);
S2、對步驟S1中的M個矩陣元數(shù)據(jù)通過隨機種子數(shù)預處理方法進行優(yōu)化;
S3、對所述步驟S2中優(yōu)化后的M個矩陣元數(shù)據(jù)通過遺傳算法繼續(xù)進行優(yōu)化;
S4、對步驟S3中優(yōu)化后的M個矩陣元數(shù)據(jù)通過擬牛頓法進行優(yōu)化,并確定優(yōu)化后的M個矩陣元數(shù)據(jù);
S5、根據(jù)步驟S4確定的M個矩陣元數(shù)據(jù),確定集總動力學方程的模型;
S6、根據(jù)所述步驟S5確定的集總動力學方程的模型,以對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)作為初始條件,計算不同反應空速所對應的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù);
S7、將步驟S2-S6通過多核處理器并行計算執(zhí)行所述集總動力學方程的模擬工作。
可選的,所述步驟S1包括:
S11、劃分加氫裂化反應虛擬集總組份;
S12、對加氫裂化集總動力學模型進行假設;
S13、構建加氫裂化反應網(wǎng)絡;
S14、根據(jù)所述加氫裂化反應網(wǎng)絡以及假設的集總動力學模型確定集總動力學方程;
S15、根據(jù)對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)、對所述原料油進行計算擬合的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)以及集總動力學方程,確定加氫裂化反應速率矩陣的所有M個矩陣元數(shù)據(jù)。
可選的,所述步驟S11包括:
S111、確定所述原料油在不同工藝條件下進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)以及產(chǎn)品餾份油的平均沸點;
S112、根據(jù)所述原料油在不同工藝條件下進行模擬蒸餾實驗的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)以及產(chǎn)品餾份油的平均沸點,劃分加氫裂化反應虛擬集總組份。
可選的,所述步驟S13包括:
劃分后的N個虛擬集總組份中,第1個虛擬集總組份的產(chǎn)品餾份油的平均沸點最高,第N個虛擬集總組份的產(chǎn)品餾份油的平均沸點最低;
第i個(1≤i≤N)虛擬集總組份包含i-1個入度和N-i個出度;
其中,i表示虛擬集總組份的第i節(jié)點;N表示虛擬集總組份的數(shù)目,并且每一個虛擬集總組份對應一個節(jié)點,共N個節(jié)點。
可選的,所述步驟S14中集總動力學方程為:
其中,Ci及Cj代表不同虛擬集總組份的餾份油質(zhì)量分率數(shù)據(jù);γi代表不同虛擬集總組份的動力學計量數(shù),不同取值分別表示不同虛擬集總組份的生成反應及消耗反應;N代表虛擬集總組份的數(shù)目;i和j分別代表不同的虛擬集總組份;kai代表矩陣元數(shù)據(jù)。
可選的,所述矩陣元數(shù)據(jù)為包括對角元的下三角矩陣。
可選的,所述步驟S2包括:
S21、對M個矩陣元數(shù)據(jù)進行預設次數(shù)的窮舉獲取多個矩陣元數(shù)據(jù)組;
S22、分別將每一個矩陣元數(shù)據(jù)組中的M個矩陣元數(shù)據(jù)代入所述集總動力學方程計算產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù);
S23、將計算的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)與在對應工藝條件下根據(jù)實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)進行對比,獲取所述計算的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)與在對應工藝條件下根據(jù)實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)的殘差最小時對應的矩陣元數(shù)據(jù),重新確定M個矩陣元數(shù)據(jù)。
可選的,所述步驟S23中,計算值與實驗值的殘差err為:
其中,Ccal,i表示通過計算獲取的第i個虛擬集總組份的餾份油質(zhì)量分率數(shù)據(jù),而Ctest,i表示通過實驗獲取的第i個虛擬集總組份的餾份油質(zhì)量分率數(shù)據(jù),N為虛擬集總組份的數(shù)目,p與q為0,1,2或無窮大。
可選的,所述步驟S3包括:
S31、以所述殘差err所表達的誤差函數(shù)作為待優(yōu)化的目標函數(shù);
S32、對所述步驟S2中優(yōu)化后的M個矩陣元數(shù)據(jù)中的每一個矩陣元數(shù)據(jù)在預設數(shù)值范圍內(nèi)進行擾動生成多個種群;
S33、根據(jù)擾動后的多個種群分別獲取所述殘差err;
S34、以所述殘差err的倒數(shù)函數(shù)作為遺傳算法的適應度函數(shù),選取適應度最大時所對應的種群個體;
S35、將所述種群個體進行種群復制,作為種群父本個體;
S36、對所述種群父本個體進行交叉和變異產(chǎn)生新的種群個體,將所述新的種群個體作為優(yōu)化后的M個矩陣元數(shù)據(jù)。
第二方面,本發(fā)明還提供了一種隨機種子數(shù)預處理擬牛頓后處理并行遺傳集總動力學系統(tǒng),包括:
參數(shù)初步確定模塊,用于根據(jù)餾份油質(zhì)量分率數(shù)據(jù)以及集總動力學方程,確定加氫裂化反應速率矩陣的所有M個矩陣元數(shù)據(jù),所述餾份油質(zhì)量分率數(shù)據(jù)包括在不同工藝條件下對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)和對所述原料油進行計算擬合的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù);
參數(shù)預處理模塊,用于對參數(shù)初步確定模塊中的M個矩陣元數(shù)據(jù)通過隨機種子數(shù)預處理方法進行優(yōu)化;
參數(shù)優(yōu)化模塊,用于對參數(shù)預處理模塊優(yōu)化后的M個矩陣元數(shù)據(jù)通過遺傳算法繼續(xù)進行優(yōu)化;
參數(shù)確定模塊,用于對參數(shù)優(yōu)化模塊優(yōu)化后的M個矩陣元數(shù)據(jù)通過擬牛頓法進行優(yōu)化,并確定優(yōu)化后的M個矩陣元數(shù)據(jù);
模型建立模塊,用于根據(jù)參數(shù)確定模塊確定的M個矩陣元數(shù)據(jù),確定集總動力學方程的模型;
質(zhì)量分率計算模塊,用于根據(jù)所述模型建立模塊確定的集總動力學方程的模型,以對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)作為初始條件,計算不同反應空速所對應的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù);
并行計算模塊,用于通過多核處理器并行計算執(zhí)行所述集總動力學方程的模擬工作。
由上述技術方案可知,本發(fā)明提供的一種隨機種子數(shù)預處理擬牛頓后處理并行遺傳集總動力學方法及系統(tǒng),通過隨機選擇機制獲取餾份油質(zhì)量分率數(shù)據(jù)以及集總動力學方程,確定加氫反應速率矩陣的矩陣元數(shù)據(jù),然后依次通過隨機種子數(shù)預處理方法、遺傳算法、擬牛頓 法對確定的矩陣元數(shù)據(jù)進行預處理、遺傳算法處理以及高精度精修處理獲取最終優(yōu)化后的矩陣元數(shù)據(jù),并根據(jù)該最終優(yōu)化后的矩陣元數(shù)據(jù)確定集總動力學方程的模型。該方法劃分多個集總組份,滿足工業(yè)生產(chǎn)產(chǎn)品切割的靈活性要求,并且通過三種算法對待建立模型中的參數(shù)進行優(yōu)化,該建立后的集總動力學模型增強了不同餾份切割方案的靈活性,并且通過該集總動力學模型計算的餾份油質(zhì)量分率數(shù)據(jù)的分布曲線與模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)的分布曲線吻合度較高。
附圖說明
圖1為本發(fā)明一實施例提供的一種隨機種子數(shù)預處理擬牛頓后處理并行遺傳集總動力學方法的流程示意圖;
圖2為本發(fā)明一實施例提供的原料餾份油的模擬蒸餾圖;
圖3為本發(fā)明一實施例提供的產(chǎn)品餾份油的模擬蒸餾圖;
圖4為本發(fā)明一實施例提供的加氫裂化反應網(wǎng)絡拓撲圖;
圖5為本發(fā)明一實施例提供的加氫裂化反應網(wǎng)絡第i個虛擬組份節(jié)點有向圖;
圖6為本發(fā)明一實施例提供的加氫裂化反應速率矩陣的結(jié)構簡圖;
圖7為本發(fā)明一實施例提供的并行計算算法的流程圖;
圖8為本發(fā)明一實施例提供的采用隨機種子數(shù)計算、遺傳算法優(yōu)化以及擬牛頓法精修計算的集總動力學方程組所獲得的產(chǎn)品餾份油質(zhì)量分率數(shù)的分布圖與實驗所獲取的產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的分布圖的對比圖;
圖9為本發(fā)明一實施例提供的不同集總劃分計算獲得產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的分布圖的對比圖;
圖10為本發(fā)明一實施例提供的一種隨機種子數(shù)預處理擬牛頓后 處理并行遺傳集總動力學系統(tǒng)的結(jié)構示意圖。
具體實施方式
下面結(jié)合附圖,對發(fā)明的具體實施方式作進一步描述。以下實施例僅用于更加清楚地說明本發(fā)明的技術方案,而不能以此來限制本發(fā)明的保護范圍。
集總動力學方法正是應用于加氫裂化或催化裂化過程的相對有效且可行的數(shù)學模式之一。該方法的基本思想是將反應涉及的各類油品按照某種原則簡化劃分為特定的虛擬集總組份,劃分方式可以按照餾份油的沸點、沸程劃分。也可按照餾份油的組份(尤其以四組份更為常見)進行劃分。劃分方案本身具有較大的靈活性。然后確立集總組份的虛擬反應網(wǎng)絡,并按照確立的反應網(wǎng)絡以及相關的反應動力學關系確立集總反應的方程式,方程式的形式一般以與一級反應相對應的線性微分方程組最為常見。然后在帶入反應初始條件的前提下,通過相關的解析及數(shù)值方法求解確立的集總反應的方程式,從而獲得各組虛擬集總餾份油產(chǎn)品隨時間分布的解析或數(shù)值函數(shù)形式。進而實現(xiàn)對于加氫裂化或催化裂化反應產(chǎn)品對于反應空速(裂化時間)關系的動態(tài)細節(jié)描述。
圖1為本發(fā)明實施例提供的一種隨機種子數(shù)預處理擬牛頓后處理并行遺傳集總動力學方法的流程示意圖,如圖1所示,該方法包括以下步驟:
S1、根據(jù)餾份油質(zhì)量分率數(shù)據(jù)以及集總動力學方程,確定加氫裂化反應速率矩陣的所有M個矩陣元數(shù)據(jù),所述餾份油質(zhì)量分率數(shù)據(jù)包括在不同工藝條件下對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)和對所述原料油進行計算擬合的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù);
S2、對步驟S1中的M個矩陣元數(shù)據(jù)通過隨機種子數(shù)預處理方法進 行優(yōu)化;
S3、對所述步驟S2中優(yōu)化后的M個矩陣元數(shù)據(jù)通過遺傳算法繼續(xù)進行優(yōu)化;
S4、對步驟S3中優(yōu)化后的M個矩陣元數(shù)據(jù)通過擬牛頓法進行優(yōu)化,并確定優(yōu)化后的M個矩陣元數(shù)據(jù);
可理解的是,上述步驟S4中,對步驟S3優(yōu)化后的M個矩陣元數(shù)據(jù)所組成的廣義誤差函數(shù)通過擬牛頓法,依次對每一個矩陣元數(shù)據(jù)進行優(yōu)化計算,并重新確定誤差函數(shù)值在預設范圍內(nèi)時的M個矩陣元數(shù)據(jù),其中,所述廣義誤差函數(shù)通過以M個矩陣元數(shù)據(jù)為自變量,以根據(jù)計算擬合的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)與通過模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)差值的絕對值作為函數(shù)值確定的。
S5、根據(jù)步驟S4確定的M個矩陣元數(shù)據(jù),確定集總動力學方程的模型。
S6、根據(jù)所述步驟S5確定的集總動力學方程的模型,以對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)作為初始條件,計算不同反應空速所對應的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)。
也就是說以圖2所示的原料餾份油的模擬蒸餾圖所對應的不同虛擬組份的餾份油質(zhì)量分率數(shù)據(jù)作為求解集總動力學反應微分方程組的初始值,采用龍格-庫塔方法計算求解該微分方程組。積分的區(qū)間從0到反應空速的倒數(shù)。
S7、將步驟S2-S6通過多核處理器并行計算執(zhí)行所述集總動力學方程的模擬工作。
上述方法通過隨機選擇機制獲取餾份油質(zhì)量分率數(shù)據(jù)以及集總動力學方程,確定加氫反應速率矩陣的矩陣元數(shù)據(jù),然后依次通過隨機種子數(shù)預處理方法、遺傳算法、擬牛頓法對確定的矩陣元數(shù)據(jù)進行 預處理、遺傳算法處理以及高精度精修處理獲取最終優(yōu)化后的矩陣元數(shù)據(jù),并根據(jù)該最終優(yōu)化后的矩陣元數(shù)據(jù)確定集總動力學方程的模型。該方法劃分多個集總組份,滿足工業(yè)生產(chǎn)產(chǎn)品切割的靈活性要求,并且通過三種算法對待建立模型中的參數(shù)進行優(yōu)化,該建立后的集總動力學模型增強了不同餾份切割方案的靈活性,并且通過該集總動力學模型計算的餾份油質(zhì)量分率數(shù)據(jù)的曲線與實驗結(jié)果吻合度較高。
下面通過具體的實施例來詳細說明上述方法,以下實施例僅用于說明本發(fā)明的方法,但是并不用來限定本發(fā)明的保護范圍。
上述步驟S1具體包括:
S11、劃分加氫裂化反應虛擬集總組份;
該步驟S11具體包括如下步驟:
S111、確定所述原料油在不同工藝條件下進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)以及產(chǎn)品餾份油的平均沸點;
S112、根據(jù)所述原料油在不同工藝條件下進行模擬蒸餾實驗的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)以及產(chǎn)品餾份油的平均沸點,劃分加氫裂化反應虛擬集總組份。
首先從40ml小型加氫裝置按照不同工藝條件依次提取溫度、處理量以及氫分壓力不同的27組實驗對應的餾份油產(chǎn)品,分別采集27種工藝操作條件下對原料油進行模擬蒸餾實驗獲取的餾份油質(zhì)量分率數(shù)據(jù)和根據(jù)所述原料油進行計算擬合的餾份油質(zhì)量分率數(shù)據(jù)作為本模型方法計算的參數(shù)擬合數(shù)據(jù)集。將原料油及驗證試驗所對應的餾份油模擬蒸餾數(shù)據(jù)繪制如圖2及圖3所示。在圖2中,其中X坐標代表模擬蒸餾切割溫度/攝氏度,Y坐標代表原料餾份油質(zhì)量分率數(shù)據(jù),圖3中,X坐標代表產(chǎn)品餾份油切割溫度/攝氏度,Y坐標代表產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)。將27組模擬蒸餾實驗數(shù)據(jù)進行劃分,將所有油品初餾點的最小值作為擬合模型體系溫度的初餾點同時將所有油品干點的最大值作為擬合模型體系溫度的干點,這樣所有餾份油沸程均在擬合模型 的所計算的沸程范圍內(nèi)。然后對計算所涉及的沸程按照實驗及計算的需要進行集總劃分,在此對該范圍進行100個集總劃分。
S12、對加氫裂化集總動力學模型進行假設;
該步驟S12包括如下步驟:
S121、在反應餾份和生成餾份屬于同一餾程時,則該反應不予考慮;
S122、加氫裂化反應具有單向性和不可逆性;
S123、所述加氫裂化反應的速率常數(shù)受溫度的影響符合Arrhenius方程;
S124、各個虛擬集總組份中較輕組份對于較重組份不發(fā)生作用,而較重組份的反應和組份反應后的累積對較輕組份的產(chǎn)生數(shù)量和產(chǎn)生速率發(fā)生影響;
S125、采用一級反應動力學模型描述;
S126、反應過程只受動力學過程控制,不受其他過程影響。
S13、構建加氫裂化反應網(wǎng)絡;
劃分后的N個虛擬集總組份中,第1個虛擬集總組份的產(chǎn)品餾份油的平均沸點最高,第N個虛擬集總組份的產(chǎn)品餾份油的平均沸點最低;
第i個(1≤i≤N)虛擬集總組份包含i-1個入度和N-i個出度;
其中,i表示虛擬集總組份的第i節(jié)點;N表示虛擬集總組份的數(shù)目,并且每一個虛擬集總組份對應一個節(jié)點,共N個節(jié)點。
舉例來說,繪制反應過程的反應網(wǎng)絡如圖4所示。其中,從左到右虛擬集總組份的產(chǎn)品餾份油的平均沸點從低到高。在該反應網(wǎng)絡中虛擬集總組份的總數(shù)N為100。在劃分過程中,第1個虛擬集總組份的產(chǎn)品餾份油的平均沸點最高,也可以理解為虛擬集總組份為最重的虛擬集總組份,而第N個虛擬集總組份的產(chǎn)品餾份油的平均沸點最低,也可以理解為虛擬集總組份為最輕的虛擬集總組份。現(xiàn)將第i個集總 組份從反應網(wǎng)絡示意圖中提取出來如圖5所示。對于第i個虛擬集總組份而言,其可視為包含100個節(jié)點的有向圖的第i個節(jié)點。對于該節(jié)點而言,總計包含i-1個入度及N-i個出度。對于反應體系而言,i-1個入度代表第i節(jié)點虛擬集總組份接收來自于比所述第i節(jié)點的虛擬集總組份較重的i-1個節(jié)點的虛擬集總組份的餾份油裂解的產(chǎn)品,N-i個出度代表第i節(jié)點的虛擬集總組份自身裂解為來自于比所述第i節(jié)點的虛擬集總組份較輕的N-i個節(jié)點的虛擬集總組份提供原料。
S14、根據(jù)所述加氫裂化反應網(wǎng)絡以及假設的集總動力學模型確定集總動力學方程;
根據(jù)反應網(wǎng)絡圖及集總反應動力學方程假設確立描述反應所涉及的常微分方程組。在本實施例中,該方程組包括100個常微分方程。
具體的,集總動力學方程為:
公式(1)
其中,Ci及Cj代表不同虛擬集總組份的餾份油質(zhì)量分率數(shù)據(jù);γi代表不同虛擬集總組份的動力學計量數(shù),不同取值分別表示不同虛擬集總組份的生成反應及消耗反應;N代表虛擬集總組份的數(shù)目;i和j分別代表不同的虛擬集總組份;kai代表矩陣元數(shù)據(jù)。
S15、根據(jù)對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)、對所述原料油進行計算擬合的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)以及集總動力學方程,確定加氫裂化反應速率矩陣的所有M個矩陣元數(shù)據(jù)。
如圖6所示,所述矩陣元數(shù)據(jù)為包括對角元的下三角矩陣,反應速率矩陣的數(shù)學形式經(jīng)虛擬集總組份從輕到重排列后可轉(zhuǎn)化為包含 對角元的上三角矩陣。
假定加氫裂化反應速率矩陣的所有矩陣元數(shù)據(jù),該矩陣為100x100規(guī)模。但根據(jù)前序模型假設該矩陣為下三角矩陣。同時由于反應自身的特點,反應速率矩陣對角線上每個元素表征該虛擬集總組份的裂解速率系數(shù),它的絕對值應該等于對應列上所有其他元素的代數(shù)和?,F(xiàn)將該實施例所涉及的加氫反應速率矩陣結(jié)構簡圖列于圖6所示。在圖6中有點的位置其矩陣元數(shù)據(jù)不為零,而空白處其矩陣元數(shù)據(jù)為零。在整個矩陣中包括5049個非零元素,這些非零元素即為本模型待優(yōu)化的參數(shù)即待優(yōu)化的M個矩陣元數(shù)據(jù)。
上述步驟S2包括:
S21、對M個矩陣元數(shù)據(jù)進行預設次數(shù)的窮舉獲取多個矩陣元數(shù)據(jù)組;
S22、分別將每一個矩陣元數(shù)據(jù)組中的M個矩陣元數(shù)據(jù)代入所述集總動力學方程計算產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù);
S23、將計算的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)與在對應工藝條件下根據(jù)實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)進行對比,獲取所述計算的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)與在對應工藝條件下根據(jù)實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)的殘差最小時對應的矩陣元數(shù)據(jù),重新確定M個矩陣元數(shù)據(jù)。
為了后續(xù)描述方便,將計算的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)定義為計算值,與計算的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)在對應工藝條件下根據(jù)實驗獲取的餾份油質(zhì)量分率數(shù)據(jù)定義為實驗值。
具體的,上述步驟S21-S23中確立實驗值與計算值的殘差err最小的初始反應速率矩陣的矩陣元數(shù)據(jù)。具體的優(yōu)化計算過程如下:
(1)假定5049個待優(yōu)化參數(shù)為0-100之間的條件隨機數(shù),這組條件隨機數(shù)滿足每列對角線上元素絕對值等于對應列上其他所有元素的代數(shù)和這一約束條件。
(2)通過假定的待優(yōu)化參數(shù)使用龍格-庫塔方法以原料油模擬蒸餾曲線所對應的餾份分布為初始條件,以0到反應空速的倒數(shù)為積分區(qū)間求解所確立的包含100個常微分方程的集總動力學常微分方程組。
(3)將求解結(jié)果與對應工藝條件下產(chǎn)品餾份油的模擬蒸餾曲線所對應的餾份油分布曲線進行誤差計算,其計算公式如下所示。在此計算過程中,取參數(shù)p=1,q=1,N=100并記錄兩者之間的誤差。
計算值與實驗值的殘差err為:
公式(2)
其中,Ccal,i表示通過計算獲取的第i個虛擬集總組份的餾份油質(zhì)量分率數(shù)據(jù),而Ctest,i表示通過實驗獲取的第i個虛擬集總組份的餾份油質(zhì)量分率數(shù)據(jù),N為虛擬集總組份的數(shù)目,p與q為0,1,2或無窮大。
(4)重復(1)-(3)過程106次,在所有諸多誤差中選取誤差最小值作為初始反應速率矩陣的矩陣元數(shù)據(jù)。作為下一步計算的初始值。
上述步驟S3包括:
S31、以殘差err也即計算值與實驗值的差值的絕對值所表達的誤差函數(shù)作為待優(yōu)化的目標函數(shù);
S32、對所述步驟S2中優(yōu)化后的M個矩陣元數(shù)據(jù)中的每一個矩陣元數(shù)據(jù)在預設數(shù)值范圍內(nèi)進行擾動生成多個種群;
S33、根據(jù)擾動后的多個種群分別獲取所述殘差err;
S34、以所述殘差err的倒數(shù)函數(shù)作為遺傳算法的適應度函數(shù),選取適應度最大時所對應的種群個體;
S35、將所述種群個體進行種群復制,作為種群父本個體;
S36、對所述種群父本個體進行交叉和變異產(chǎn)生新的種群個體, 將所述新的種群個體作為優(yōu)化后的M個矩陣元數(shù)據(jù)。
具體的,上述步驟S31-S36基于遺傳算法確立實驗值與計算值的殘差最小的反應速率矩陣的矩陣元數(shù)據(jù)。具體的優(yōu)化計算過程如下:
(1)對所述步驟S2中優(yōu)化后的M個矩陣元數(shù)據(jù)初始值矩陣的每個元素進行小規(guī)模擾動,擾動范圍為每個矩陣元數(shù)據(jù)初始值矩陣的每個元素數(shù)值的0.8-1.2倍。通過隨機擾動生成規(guī)模為800的初始矩陣元數(shù)據(jù)種群。這一擾動的目的既保證了種群總體質(zhì)量的“優(yōu)秀性”,又保證了種群的“多樣化”,并以該種群作為遺傳算法優(yōu)化計算的初始種群。
(2)以公式(2)所示的誤差函數(shù)的倒數(shù)函數(shù)作為遺傳算法的適應度函數(shù),依次計算每個種群個體的適應度函數(shù)值。其中誤差函數(shù)計算時取p=1及q=1。確保誤差越小,其相關適應度越大。以便使得誤差小的矩陣元數(shù)據(jù)種群更能夠獲得保留。
(3)采用遺傳算法的選擇性算法選出個體進行種群復制,作為下次計算的種群父本個體;
(4)對已選取的種群父本個體進行交叉和變異產(chǎn)生新的種群個體,相關的交叉率為0.1-0.9,優(yōu)選為0.5,變異率為0.0001-0.05,優(yōu)選為0.001;
(5)將新的種群個體替代舊的種群個體,重復步驟(2)-(4)直至進化達到優(yōu)化目標,整個遺傳算法的計算代數(shù)為10000代。
保留計算過程中涉及的所有不同代數(shù)的種群個體共計8x106個,在其中選取適應度函數(shù)最大即誤差函數(shù)值最小的個體作為下一步參數(shù)精修計算的初始值。
具體的,上述步驟速率矩陣元數(shù)據(jù)作為初始數(shù)據(jù)基于遺傳算法優(yōu)化計算速率矩陣相關矩陣元數(shù)據(jù)的具體數(shù)值這一具體過程中也可以理解為包括以下步驟:
A)將由實驗值與計算值差的范數(shù)所表達的誤差函數(shù)作為待優(yōu)化 目標函數(shù)的形式;
B)針對每個優(yōu)化目標生成的初始反應速率矩陣的矩陣元數(shù)據(jù)的數(shù)值鄰域內(nèi)隨機生成相應目標的種群,種群個體數(shù)目為20-400000個;
C)對每個種群依據(jù)相關二進制代碼進行隨機變換,形成新種群;
D)按C)的方式依次生成新個體,新個體數(shù)目為20-400000個;
E)以待優(yōu)化的目標函數(shù)倒數(shù)或與該函數(shù)正向相關的函數(shù)做為適應度函數(shù),依次計算每個種群個體的適應度函數(shù)值;
F)采用遺傳算法的“輪盤賭”算法按照概率方式選出個體適應度函數(shù)值較大的種群進行種群復制,作為下次計算的種群父本個體;
G)對已選取的種群父本個體進行交叉和變異產(chǎn)生新的種群個體,相關的交叉率為0.1-0.9,變異率為0.0001-0.05;
H)將新種群替代舊種群,重復步驟C)-H)直至進化達到優(yōu)化目標,整個遺傳算法的計算代數(shù)為100-1000000代。
具體的,上述步驟S4中,基于擬牛頓變尺度(BFGS)算法優(yōu)化上一步由遺傳算法確立的矩陣元數(shù)據(jù)。具體的優(yōu)化計算過程如下:
(1)以通過遺傳算法計算獲取的適應度函數(shù)最大的個體所對應的矩陣元數(shù)據(jù)作為擬牛頓變尺度(BFGS)計算的迭代初始值。
(2)以二階數(shù)值差分方法計算在此初始值處的Hessian矩陣。
(3)對計算獲得的對稱Hessian矩陣計算特征值,如果判定Hessian矩陣是正定矩陣,則以其作為Newton迭代所使用的二階矩陣。如果判定Hessian矩陣不是正定矩陣,則以一個擾動的系數(shù)乘以一個單位矩陣再加到對應的Hessian矩陣上以此方法構造所謂的正定矩陣B*來逼近Hessian矩陣。以矩陣B*作為Newton迭代所使用的二階矩陣。
(4)對迭代初始值進行變步長的牛頓迭代計算。獲得具有最小值的新優(yōu)化值,按公式(2)計算兩者的誤差,計算過程中取p=2,q=1。若前后兩次計算結(jié)果誤差絕對值小于0.001則停止迭代計算。否則將新的優(yōu)化值代替初始值,重復(2)-(4)這一過程直至兩者誤差小 于0.001為止。
將最終計算結(jié)果作為經(jīng)過精修后的最終反應速率矩陣的矩陣元數(shù)據(jù)。進而確立集總動力學反應微分方程組的數(shù)學模式。
如圖7所示,上述步驟S7具體包括如下步驟:
S71、使用多核計算機16核同時并行產(chǎn)生1000000組包含5049個0~100之間的隨機數(shù)的數(shù)組;
S72、對產(chǎn)生的1000000組隨機數(shù)組進行16核并行組裝生成集總動力學反應矩陣;
S73、以原料油質(zhì)量分率數(shù)據(jù)的分布為初始條件以零到對應的反應空速倒數(shù)為積分區(qū)間按照生成的矩陣并行采用龍格-庫塔方法計算1000000組包含100個微分方程的集總動力學方程組所對應的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)的分布曲線;
S74、按照上述公式(2)計算1000000組產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)的分布曲線與實際產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)的分布曲線的差值,選擇其中差值最小者所對應的包含5049個隨機數(shù)的數(shù)組作為反應速率矩陣的初始動力學參數(shù);
S75、對所獲得的初始動力學參數(shù)數(shù)組中的每個元素進行其0.8-1.2倍的隨機擾動并行產(chǎn)生800組遺傳算法的初始種群,并對每個種群個體進行二進制編碼;
S76、將生成的二進制編碼分組進行并行交叉、變異生成新的二進制代碼,并將生成二進制代碼轉(zhuǎn)換為對應的遺傳算法計算新種群,按照公式(2)的倒數(shù)作為遺傳算法的自適應度函數(shù),依次并行計算初始種群及新種群的自適應度函數(shù)值;
S77、將計算獲得的自適應度函數(shù)值依照“輪盤賭”的方式按概率隨機選取800組新種群,作為下一代種群參與后續(xù)計算;
S78、將所生成的新種群代替初始種群并記錄所有種群個體的二進制編碼及所有個體的自適應度函數(shù)以及誤差函數(shù)值,重復S76-S77 步驟10000次獲得的種群作為最終種群;
S79、選取計算過程中所有個體中自適應函數(shù)數(shù)值最大也即誤差函數(shù)最小的個體作為下一步精修計算的初始值;
S80、依據(jù)遺傳算法選定的最優(yōu)個體的每個元素采用三點數(shù)值差分的方法采用16核并行計算方式近似計算誤差函數(shù)對于每個矩陣元數(shù)據(jù)的一階導數(shù)向量以及二階Hessian矩陣;
S81、對計算獲得的二維Hessian矩陣進行特征分解,求取其對應的特征值,由于Hessian矩陣具有對稱性,故其特征值必為實數(shù);
S82、對Hessian矩陣進行判斷看其是否為正定矩陣,如果該矩陣為正定矩陣,則直接采用Newton及一維搜索方法進行迭代計算,如果該矩陣為非正定矩陣,則以一個擾動值乘以一個單位矩陣加到該Hessian矩陣上構造一個正定矩陣再采用Newton及一維搜索方法進行迭代計算,通過迭代計算可以獲得新的最優(yōu)解向量;
S83、以新的解向量代替S80使用的解向量,重復S80-S82步驟直至誤差函數(shù)值小于0.001為止,停止迭代計算,并將所得的解向量作為精修后的解向量,由此確定相關集總動力學的全部待定參數(shù),確立集總動力學方程的數(shù)學形式;
S84、依據(jù)確立的集總動力學方程組以原料油質(zhì)量分率數(shù)據(jù)(即對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù))作為初始條件計算不同空速所對應的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù),并可進一步依照不同切割方案計算對應的餾份油質(zhì)量分率數(shù)據(jù)的分布情況。
如圖8所示,X坐標代表產(chǎn)品餾份油切割溫度/攝氏度,Y坐標代表產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù),圖中分別采用初始隨機種子數(shù)、遺傳算法以及擬牛頓法法計算集總動力學方程組所獲得的產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的分布圖與實驗所獲取的產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的分布圖的對比圖??梢园l(fā)現(xiàn)由于待優(yōu)化參數(shù)數(shù)目眾多通過初始隨機種子數(shù) 計算的產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的分布與實驗分布尚有很大差別,而通過遺傳算法計算確定的產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的曲線則與實驗所獲取的產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的曲線相對比較接近但仍有一定的偏離,而最終經(jīng)過擬牛頓法八次迭代計算精修獲得的計算結(jié)果則與實驗結(jié)果相當?shù)姆€(wěn)合。實現(xiàn)了對于產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的分布的高精度數(shù)值擬合。
通過遺傳算法計算的相關殘差err=24.1186,而通過擬牛頓法7步迭代計算獲得的最終殘差err=3.9568.對應的反應速率矩陣由于矩陣元數(shù)據(jù)眾多,僅列舉部分列于表1,表1為通過各種算法計算獲得殘差及部分矩陣元數(shù)據(jù)的數(shù)值。
表1
為了表現(xiàn)本發(fā)明所涉及算法對于集總模型所涉及的虛擬集總組份數(shù)目的依賴,在此分別以20集總50集總以及100集總模型計算相關的餾份油質(zhì)量分率數(shù)據(jù)的分布曲線,并將計算結(jié)果與實驗結(jié)果進行對比,將對比結(jié)果列于圖9所示,X坐標代表產(chǎn)品餾份油切割溫度/攝氏度,Y坐標代表產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)。上述BFGS方法對應于擬牛頓法。
計算結(jié)果表明集總組份數(shù)目對于產(chǎn)品餾份油質(zhì)量分率的計算擬合相當重要。如果想達到較高的擬合精度必須保證足夠的虛擬組份數(shù)量。當虛擬組份為20時,計算結(jié)果十分粗糙的表達了產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的大體趨勢,但完全無法表達出產(chǎn)品餾份油質(zhì)量分率數(shù)據(jù)的分布的細節(jié)信息,無論高沸程餾份也即平均沸點最高的虛擬集總組份的餾份油質(zhì)量分率數(shù)據(jù)還是低沸程餾份也即平均沸點最低的虛擬集總組份的餾份油質(zhì)量分率數(shù)據(jù)都是如此;當虛擬組份為50時,計 算結(jié)果對于高沸程餾份的餾份油質(zhì)量分率數(shù)據(jù)的分布吻合的較好,這是因為高沸程餾份的餾份油質(zhì)量分率數(shù)據(jù)的分布隨切割溫度的波動較小,而模型對于低沸程餾份的餾份油質(zhì)量分率數(shù)據(jù)的分布表達的較粗糙,因為低沸程餾份的餾份油質(zhì)量分率數(shù)據(jù)的分布隨切割溫度的波動較大;當虛擬組份為100時,計算結(jié)果對于高低沸程餾份的餾份油質(zhì)量分率數(shù)據(jù)的分布吻合的均較好,既反映了高沸程餾份的餾份油質(zhì)量分率數(shù)據(jù)的平緩分布,也表現(xiàn)了低沸程餾份的餾份油質(zhì)量分率數(shù)據(jù)的波動性分布。
為了表現(xiàn)該方法對于不同餾份切割方案的靈活實用性。現(xiàn)將兩種不同的產(chǎn)品餾份油切割方案及其按照上述方法計算所獲得的結(jié)果列于表2及表3所示。表2和表3為不同切割餾份的的餾份油質(zhì)量分率數(shù)據(jù)的分布情況。
表2
表3
通過表2及表3的比較可以發(fā)現(xiàn),由于本發(fā)明可以采用較多的集總組份對餾份油進行劃分并計算,同時其計算結(jié)果擬合精度很高。因此本發(fā)明的計算結(jié)果可以對于餾份油的靈活切割方案具有十分廣義和靈活的適用性。
為了表現(xiàn)并行計算方法對于計算的加速效果,在此采用不同的集總組份模型采用不同的并行計算系統(tǒng)予以計算,將相關程序的計算時間列于表4所示。
表4
由表4的數(shù)據(jù)可以發(fā)現(xiàn),隨著計算核心數(shù)目的增加計算時間縮短,確實能夠增加計算效率。但是對于單機并行計算系統(tǒng)計算時間的縮短并不與計算核心數(shù)的增加呈簡單的反比例關系。當計算中心數(shù)小于等于8時這種反比例關系比較明顯,當計算中心為16時所需計算時間雖然總體上減小但并未達到計算中心為8時的1/2,這是因為并行計算系統(tǒng)內(nèi)部硬件配置所造成的。但從總體而言,并行計算方法的引入確實可以大大縮短計算時間。例如,對于250集總動力學模型的整個計算過程而言,使用串行計算相關機時約為150天左右,而使用16核并行計算系統(tǒng)則可以保證在11天左右完成相同的計算工作。
如圖10所示,本發(fā)明實施例還提供了一種隨機種子數(shù)預處理擬牛頓后處理并行遺傳集總動力學系統(tǒng)的結(jié)構示意圖,如圖10所示,該系統(tǒng)包括:
參數(shù)初步確定模塊101,用于根據(jù)餾份油質(zhì)量分率數(shù)據(jù)以及集總動力學方程,確定加氫裂化反應速率矩陣的所有M個矩陣元數(shù)據(jù),所述餾份油質(zhì)量分率數(shù)據(jù)包括在不同工藝條件下對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)和對所述原料油進行計算擬合的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù);
參數(shù)預處理模塊102,用于對參數(shù)初步確定模塊中的M個矩陣元數(shù)據(jù)通過隨機種子數(shù)預處理方法進行優(yōu)化;
參數(shù)優(yōu)化模塊103,用于對參數(shù)預處理模塊優(yōu)化后的M個矩陣元 數(shù)據(jù)通過遺傳算法繼續(xù)進行優(yōu)化;
參數(shù)確定模塊104,用于對參數(shù)優(yōu)化模塊優(yōu)化后的M個矩陣元數(shù)據(jù)通過擬牛頓法進行優(yōu)化,并確定優(yōu)化后的M個矩陣元數(shù)據(jù);
模型建立模塊105,用于根據(jù)參數(shù)確定模塊確定的M個矩陣元數(shù)據(jù),確定集總動力學方程的模型。
質(zhì)量分率計算模塊106,用于根據(jù)所述模型建立模塊確定的集總動力學方程的模型,以對原料油進行模擬蒸餾實驗獲取的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù)作為初始條件,計算不同反應空速所對應的產(chǎn)品餾份油的餾份油質(zhì)量分率數(shù)據(jù);
并行計算模塊107,用于通過多核處理器并行計算執(zhí)行所述集總動力學方程的模擬工作。
上述系統(tǒng)與上述方法是一一對應的,上述方法的實施細節(jié)也適用于該系統(tǒng),本實施例不對該系統(tǒng)進行詳細說明。
本發(fā)明的說明書中,說明了大量具體細節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細節(jié)的情況下實踐。在一些實例中,并未詳細示出公知的方法、結(jié)構和技術,以便不模糊對本說明書的理解。
本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質(zhì)脫離本發(fā)明各 實施例技術方案的范圍,其均應涵蓋在本發(fā)明的權利要求和說明書的范圍當中。