曹 美, 崔國民, 陳家星, 李 劍
(上海理工大學(xué) 新能源科學(xué)與工程研究所, 上海 200093)
換熱網(wǎng)絡(luò)綜合已成為化工系統(tǒng)研究的難點,國內(nèi)外相關(guān)研究從優(yōu)化方法的角度主要分為夾點分析和數(shù)學(xué)規(guī)劃法[1]。夾點分析[2]最早由LINNHOFF 等提出,以熱力學(xué)為基礎(chǔ),分析過程系統(tǒng)中的溫度分布,選擇合適的夾點溫度及組合匹配方式以實現(xiàn)能量的最大回收利用。
數(shù)學(xué)規(guī)劃法可分為確定性方法和啟發(fā)式算法[3-5]。確定性方法如牛頓法[6-8]、最速下降法[9]、分支定界法[10]等,這些方法在求解具有非凸特性的混合整數(shù)非線性規(guī)劃問題時,求解效率較低,不能滿足大規(guī)模系統(tǒng)計算需求。而啟發(fā)式算法如模擬退火算法(simulated annealing, SA)[11-12]、禁忌算法(Tabu search, TS)[13]、微分進化算法(differential evolution, DE)[14]、遺傳算法(genetic algorithm, GA)[15]及粒子群算法(particle swarm optimization, PSO)[16]等,能夠利用已有的經(jīng)驗規(guī)則,隨機搜索求解域內(nèi)的全局最優(yōu)解。啟發(fā)式算法可操作性強,計算效率高,因此在換熱網(wǎng)絡(luò)最優(yōu)化問題中得到越來越多的應(yīng)用。但是在種群進化后期,由于種群多樣性的缺失,啟發(fā)式算法容易出現(xiàn)早熟收斂的問題。同時大規(guī)模系統(tǒng)的求解難度和復(fù)雜程度不斷增加,影響優(yōu)化效率和優(yōu)化精度。
為了提高啟發(fā)式算法應(yīng)用于大規(guī)模系統(tǒng)的優(yōu)化質(zhì)量,提升算法的全局優(yōu)化性能。肖媛等[17]總結(jié)了啟發(fā)式算法應(yīng)用于換熱網(wǎng)絡(luò)優(yōu)化的特點,揭示了其早熟收斂現(xiàn)象的本質(zhì),并在此基礎(chǔ)上提出了一種新的強制進化隨機游走算法(random walk algorithm with compulsive evolution, RWCE)。相比于其他啟發(fā)式算法,RWCE 具有程序簡單、算法適應(yīng)性強的特點,具備跳出局部最優(yōu)解的能力,從而提升了換熱網(wǎng)絡(luò)的優(yōu)化質(zhì)量。
采用RWCE 優(yōu)化換熱網(wǎng)絡(luò),分析其優(yōu)化進程。發(fā)現(xiàn)個體在每次進化時都是以一定的幾率隨機參與游走,因此在優(yōu)化過程中不一定每股流體上都有換熱單元被選中參與進化。對于沒有參與進化的流股,該次迭代便沒有意義。如要保證每股流體都進化一次需要增加大量的迭代次數(shù),使得換熱網(wǎng)絡(luò)的進化效率低下。故本文提出以熱流體為基準(zhǔn)每股流體必進化策略,即每隔一定周期強制使得每股流體上都有換熱單元被選中參與進化,并每隔一定步數(shù)強制接受每股流體都游走的結(jié)構(gòu),使其跳出局部極值,提升算法的優(yōu)化效率和優(yōu)化質(zhì)量。
換熱網(wǎng)絡(luò)優(yōu)化問題描述為:以年度總費用(total annual cost,TAC)最低為目標(biāo),通過在NH股熱流體與NC股冷流體之間設(shè)置換熱單元及冷、熱公用工程,使冷熱流體達到目標(biāo)溫度,實現(xiàn)能量回收。本文采用換熱網(wǎng)絡(luò)節(jié)點非結(jié)構(gòu)模型[18],以2 股熱流體和2 股冷流體為例,非結(jié)構(gòu)模型如圖 1 所示。其中,H1、H2 表示兩股熱流體,C1、C2 表示兩股冷流體,公用工程布置在冷熱流股末端,每股冷熱流體上分別預(yù)設(shè)NGDC、NGDH個產(chǎn)生換熱單元的位置。
本文基于換熱網(wǎng)絡(luò)非結(jié)構(gòu)模型,以TAC 最小為目標(biāo),數(shù)學(xué)描述為:
該模型包含NH股熱流體、NC股冷流體,熱流體上共有NKH個節(jié)點,冷流體上共有NKC個節(jié)點,NKH= NH× NGDH,NKC= NC× NGDC。TAC 如式(1)和(2)所示。
圖1非結(jié)構(gòu)模型結(jié)構(gòu)圖Fig.1 Non-structural model structure
式中,TAC 表示年度綜合費用;FG表示固定投資費用;CA表示換熱單元的面積費用系數(shù);A 表示設(shè)備面積,m2;β 表示面積費用指數(shù);Q 表示公用工程熱負(fù)荷,kW;C 表示公用工程費用系數(shù);下角標(biāo)CU 表示冷公用工程,HU 表示熱公用工程;z, i, j 分別表示換熱單元數(shù)、熱流體數(shù)和冷流體數(shù),z∈Nh,c,i∈NH,j∈NC;Nh,c表示可能存在的所有換熱單元的個數(shù),N′h,c實際存在的換熱單元的個數(shù),C’表示換熱單元是否存在的0-1 變量。
換熱單元的熱負(fù)荷及面積的熱平衡關(guān)系式如式(3)和(4)所示。
RWCE 的基本思想[17]是:隨機產(chǎn)生初始換熱網(wǎng)絡(luò)結(jié)構(gòu),以目標(biāo)函數(shù)TAC 減小為強制進化方向,隨機改變換熱單元的面積實現(xiàn)連續(xù)變量和整型變量的同步優(yōu)化;當(dāng)游走到局部最優(yōu)點時,以一定幾率隨機接受差解,使其跳出局部極值,尋找全局最優(yōu)。主要操作步驟為:
(1) 種群初始化。隨機產(chǎn)生初始種群M,其中包含n 個個體Zi,i = 1,…,n,每個個體對應(yīng)一個換熱網(wǎng)絡(luò)結(jié)構(gòu)。初始種群表示如式(7)~(9)所示。
其中,η 為保留系數(shù),指可保留的最小熱負(fù)荷與最大游走步長ΔL 的比值。
b. 新個體產(chǎn)生階段。隨機選擇冷熱流股上的節(jié)點,判斷該節(jié)點處是否存在換熱單元,若不存在,則在該位置以一定概率隨機生成一定熱負(fù)荷的換熱單元。如式(15)~(17)所示。
其中,γ,γ1,γ2為0 到1 之間均勻分布的隨機數(shù);u 為熱流體上節(jié)點,v 為冷流體上節(jié)點,Qp,q為在u,v節(jié)點處新生成換熱單元的熱負(fù)荷。
(3) 個體選擇階段。迭代后,若TAC 比前一次迭代值更低,則接受該次迭代的換熱網(wǎng)絡(luò)結(jié)構(gòu),并將該結(jié)構(gòu)對應(yīng)的熱負(fù)荷及節(jié)點編號作為下一次迭代的初始結(jié)構(gòu);若迭代后,TAC 不低于上一次迭代的值,則以一定概率δ 接受該次迭代的換熱網(wǎng)絡(luò)結(jié)構(gòu)作為下一次迭代的初始結(jié)構(gòu);否則不更新該個體。如式(18)所示。
其中,r 為0 到1 之間均勻分布的隨機數(shù)。
(4) 終止條件。記錄迭代過程中TAC 最低的換熱網(wǎng)絡(luò)結(jié)構(gòu),當(dāng)滿足終止條件時,迭代終止。
相較于其他優(yōu)化方法,RWCE 優(yōu)化換熱網(wǎng)絡(luò)能得到較低的TAC,但是需要較長的計算時間,優(yōu)化效率仍有待提高。研究發(fā)現(xiàn)個體在每次進化時都以一定幾率隨機選擇已存在的換熱單元參與進化,且進化幾率值較低,因此不能確定每次進化時每股流體上都有換熱單元被選中參與進化。以13 股熱流體7 股冷流體的算例為例,進化過程中的節(jié)點選中幾率設(shè)為0.2,分析每次進化時流體不被選中的幾率。
由圖2 可知,進化前期,換熱單元數(shù)目存在較大波動時,流股被選中幾率也有較大變化;進化后期,換熱單元數(shù)基本固定在某一數(shù)值附近,此時每股流體不被選中的幾率基本固定在0.74 左右。即在進化后期,13 股熱流體中平均每次迭代只能選中3 股左右參與進化。對于當(dāng)前次進化沒有被選中的流股,該次迭代就沒有意義;要保證每股流體都進化一次需要消耗大量的迭代次數(shù),對換熱網(wǎng)絡(luò)的進化產(chǎn)生不利影響。針對此特點,采取以熱流體為基準(zhǔn)每股流體必游走策略,即采取措施使得每隔一定周期每股流體上都至少有一個換熱單元被選中參與進化,從而均勻地增加每股流體的進化幾率,以提升換熱網(wǎng)絡(luò)的優(yōu)化效率。
主要策略是在存在的個體進化處采取措施。在個體進化之前,預(yù)先判斷每股流體上已經(jīng)存在的換熱單元數(shù),重新編號,并與原來的編號一一對應(yīng)。每隔 itG1次迭代,采取一次每股流體上都有一個換熱單元被選中參與進化的措施;其余迭代步數(shù)以原有的進化方式隨機參與進化。其中,itG1表示采取必游走策略的迭代周期。每隔一定周期采取一次每股流體必游走策略,既能在個體進化到一定程度之后給種群一定的方向指導(dǎo),又能在其他迭代期間使種群保持原有的隨機進化方向,保留其隨機性特點。
以13 股熱流體7 股冷流體的算例[19](算例1)為例,流股參數(shù)如表1 所示。采用RWCE 優(yōu)化換熱網(wǎng)絡(luò)并采取每股流體必游走策略,當(dāng)參數(shù)設(shè)為:NGDH= 10,NGDC= 10,ΔL = 100,η = 0.2,δ = 0.01,Qmax= 100,itG1= 1 000 時,TAC 變化曲線如圖 3 示。
圖2 流股未被選中幾率Fig.2 The probability of the stream unselected in each iteration
由圖 3 可知,采取必游走策略的RWCE 能比原始 RWCE 以更快的速度尋找到具有更低 TAC 的結(jié)構(gòu),有效提高了算法的優(yōu)化質(zhì)量。
采用加入每股流體必游走策略的RWCE 優(yōu)化換熱網(wǎng)絡(luò),分析發(fā)現(xiàn),只在存在的個體進化處采取措施,不能保證每次進化之后的個體一定會被接受。采取必游走策略之后,每股流體上都有換熱單元的熱負(fù)荷發(fā)生變化,故該次迭代后的費用很大幾率上比前一次迭代的費用高。此時,進化后較高費用的結(jié)構(gòu)便不會被接受。因此該策略只能在一定程度上改變進化方向,不能從根本上跳出局部極值。為充分發(fā)揮必游走策略的方向指導(dǎo)作用,進一步在個體選擇位置采取措施,每隔 itG2次迭代強制接受一次每股流體必游走之后的結(jié)構(gòu),即每股流體必進化策略,其中 itG2表示強制接受每股流體必游走之后的結(jié)構(gòu)的迭代周期。
表1 算例1 參數(shù)數(shù)據(jù)Table 1 Flow parameters of case 1
圖3 必游走TAC 變化曲線圖Fig.3 TAC curve for the participatory evolution strategy for streams
表2 算例2 參數(shù)數(shù)據(jù)Table 2 Flow parameters of case 2
每隔一定周期采取一次每股流體必進化策略,使得換熱網(wǎng)絡(luò)的優(yōu)化既能夠保留原有進化方法的隨機性特性,又能給該隨機進化方法一定的方向指導(dǎo),更快速地找到更優(yōu)的結(jié)構(gòu)。以13 股熱流體7 股冷流體和8 股熱流體7 股冷流體的算例[26](算例2)為例,采用RWCE 優(yōu)化換熱網(wǎng)絡(luò)并采取每股流體必進化策略,8 股熱流體7 股冷流體的算例流股參數(shù)如表2 所示。當(dāng)將13 股熱流體7 股冷流體的算例參數(shù)設(shè)為:NGDH= 10,NGDC= 10,ΔL=100,η = 0.2,δ = 0.01,Qmax= 100,itG1= 1 000,itG2= 5.5×106時,采取必進化策略的TAC 與原程序的TAC 變化曲線如圖4、圖5 示。
圖4 必進化實時TAC 變化曲線圖 Fig.4 TAC curve for compulsive participatory evolutionary strategy in the real time
圖5 必進化最優(yōu)TAC 變化曲線圖 Fig.5 Lowest TAC curve for compulsive participatory evolutionary strategy
當(dāng)將8 股熱流體7 股冷流體的算例參數(shù)設(shè)為:NGDH= 10,NGDC= 10,ΔL = 110,η = 0.2,δ = 0.01,Qmax= 100,ITG1= 1 000,ITG2= 5.5×106時,采取必進化策略的TAC 與原程序的TAC 變化曲線如圖6、圖7 所示。
圖6 必進化實時TAC 變化曲線圖 Fig.6 TAC curve for the compulsive participatory evolutionary strategy in the real time
圖7 必進化最優(yōu)TAC 變化曲線圖 Fig.7 Lowest TAC curve for compulsive participatory evolutionary strategy
由圖可知,采取每股流體必進化策略的RWCE,能以更高的速率找到更優(yōu)解,顯著地提高了RWCE的求解速率及求解質(zhì)量。在每股流體必進化策略中,每一次強制接受每股流體必游走的結(jié)構(gòu)之后,費用會急劇增加,但每次的費用增加,都會打破原有的進化方向,跳出局部極值,從而增強RWCE 的局部搜索能力。
將結(jié)合上述策略的改進RWCE 應(yīng)用于換熱網(wǎng)絡(luò)優(yōu)化,存在的個體進化部分的改進步驟如下:
Step 1:判斷已經(jīng)存在換熱單元的位置,將已存在的換熱單元重新編號,并與原來的節(jié)點編號一一對應(yīng);
Step 2:對種群內(nèi)部的所有個體進行隨機游走操作:每隔一定迭代次數(shù)采取一次每股流體上至少有一個換熱單元被選中參與游走的措施,其余迭代步數(shù)仍按照原來的進化幾率進行隨機游走操作;
個體選擇部分的改進步驟為:
Step 1:每隔一定迭代次數(shù)后強制接受一次當(dāng)前迭代后的結(jié)構(gòu):經(jīng)過it 次迭代,無論TAC 是否比上一次迭代更低,都強制接受該換熱網(wǎng)絡(luò)結(jié)構(gòu)及每個節(jié)點的熱負(fù)荷,并將該結(jié)構(gòu)的熱負(fù)荷作為第(it+1)次迭代的初始熱負(fù)荷。如式(19)所示。
Step 2:其余迭代次數(shù)仍以得到更低的TAC 為目標(biāo),進行隨機游走操作。經(jīng)過it 次迭代,若TAC 比上一次迭代更低,則接受換熱網(wǎng)絡(luò)結(jié)構(gòu)及每個節(jié)點的熱負(fù)荷,并將該結(jié)構(gòu)的熱負(fù)荷作為第(it+1)次迭代的初始熱負(fù)荷,否則不更新該個體,保持第it 次迭代的換熱網(wǎng)絡(luò)結(jié)構(gòu)及熱負(fù)荷。如式(20)所示。
Step 3:變異操作。若經(jīng)過it 次迭代,TAC 不低于上一次迭代的費用,則以一定概率δ 接受該次迭代的換熱網(wǎng)絡(luò)結(jié)構(gòu)及熱負(fù)荷,作為第(it+1)次迭代的初始結(jié)構(gòu)及初始熱負(fù)荷。如式(21)所示。
其中,r 為0 到1 之間均勻分布的隨機數(shù),δ 為當(dāng)(it+1)次迭代的TAC 大于it 次迭代時,更新?lián)Q熱網(wǎng)絡(luò)結(jié)構(gòu),接受差解的概率。其算法流程圖如圖8,9,10 所示。
圖8 存在的個體進化Fig.8 Random walk evolution for each individualin the population
圖9 個體選擇階段Fig.9 Individual selections
圖10 必進化策略流程圖Fig.10 Flow chart of the weighted evolutionary strategy
文獻中的優(yōu)化方法大多基于YEE 等[20-22]提出的分級超結(jié)構(gòu)模型進行的。 ESCOBAR 等[23]采用等溫混合假設(shè)法,得到算例1 的TAC 為1 537 086 $·a-1。Pav?o 等[24]采用改進的粒子群算法,得到TAC為 1 516 482 $·a-1;BAO 等[25]采用保護最優(yōu)解策略的 RWCE,得到 TAC 為 1 462 363 $·a-1。本文采用每股流體必游走策略的RWCE,得到的TAC 為1 432 904 $·a-1,費用結(jié)構(gòu)圖如圖11 所示;采用每股流體必進化策略的RWCE,得到的TAC 為1 411 131 $·a-1,費用結(jié)構(gòu)圖如圖12 所示;算例1 的結(jié)果對比如表3 所示。
圖11 采用每股流體必游走策略的RWCE 優(yōu)化結(jié)果Fig.11 RWCE optimization results using the participatory evolutionary strategy for streams
圖12 采用每股流體必進化策略的RWCE 優(yōu)化結(jié)果Fig.12 RWCE optimization results using the compulsive participatory evolutionary strategy
BJORK 等[26]采用數(shù)學(xué)規(guī)劃法改造換熱網(wǎng)絡(luò)得到算例 2 的 TAC為 1 530 063 $·a-1;PENG 等[27]采用改進模擬退火算法得到的TAC 為1 527 240 $·a-1;LEANDRO 等[28]采用模擬退火算法和粒子群算法相結(jié)合的雙層優(yōu)化方法,得到的TAC 為1 525 394 $·a-1;本文采用每股流體必游走策略的RWCE,得到的TAC 為1 519 791 $·a-1,費用結(jié)構(gòu)圖如圖13 所示;采用每股流體必進化策略的RWCE,得到的TAC 為1 518 969 $·a-1,費用結(jié)構(gòu)圖如圖14 所示;算例2 的結(jié)果對比如表4 所示。
表3 算例1 優(yōu)化結(jié)果對比Table 3 Comparison on optimized results of case 1
圖13 采用每股流體必游走策略的RWCE 優(yōu)化結(jié)果Fig.13 RWCE optimization results using the participatory evolutionary strategy for streams
圖14 采用每股流體必進化策略的RWCE 優(yōu)化結(jié)果Fig.14 RWCE optimization results using the compulsive participatory evolutionary strategy
由算例 1 及算例 2的優(yōu)化結(jié)果及對比可知,在相同的目標(biāo)函數(shù)、約束條件和費用系數(shù)等條件下,RWCE 算法能比其他優(yōu)化方法以更快的速度得到更優(yōu)的結(jié)果,尤其是改進的RWCE 算法。采用以熱流體為基準(zhǔn)每股流體必進化策略的RWCE算法,有效提高了換熱網(wǎng)絡(luò)的優(yōu)化效率及優(yōu)化質(zhì)量。
表4 算例2 優(yōu)化結(jié)果對比Table 4 Comparison on optimized results of case 2
本文提出的以熱流體為基準(zhǔn)每股流體必進化策略的RWCE 算法,能夠在保留非結(jié)構(gòu)模型一定自由性的基礎(chǔ)上,給非結(jié)構(gòu)模型一定的方向指導(dǎo)。既不破壞非結(jié)構(gòu)模型的自由性與靈活性,也能夠使非結(jié)構(gòu)模型的優(yōu)化目標(biāo)更趨向于全局最優(yōu)解,從而提高換熱網(wǎng)絡(luò)的優(yōu)化質(zhì)量。
通過兩個不同規(guī)模的算例驗證提出的策略,得到的結(jié)果分別為1 411 131 和1 518 969 $·a-1。結(jié)果表明,采用每股流體必進化策略的換熱網(wǎng)絡(luò)優(yōu)化方法能夠有效提高非結(jié)構(gòu)模型的優(yōu)化質(zhì)量。
但是每股流體必進化策略仍存在一定的不足。在換熱網(wǎng)絡(luò)優(yōu)化后期,出現(xiàn)不存在公用工程的流股,此時采用每股流體必進化策略的效果便不如預(yù)期。因此每股流體必進化策略的優(yōu)化方法仍需繼續(xù)深入研究,以改進該策略在換熱網(wǎng)絡(luò)優(yōu)化后期的不足,進一步提升該策略在換熱網(wǎng)絡(luò)非結(jié)構(gòu)模型中的優(yōu)化質(zhì)量。