劉洪彬,崔國民,周志強,肖媛,張冠華,楊其國
(1 上海理工大學能源與動力工程學院,上海 200093;2 上海市動力工程多相流動與傳熱重點實驗室,上海 200093)
換熱網(wǎng)絡優(yōu)化是過程工業(yè)節(jié)能的重要途徑,可為企業(yè)提供顯著的節(jié)能效果和經(jīng)濟效益。換熱網(wǎng)絡優(yōu)化屬于混合整數(shù)非線性規(guī)劃模型(mixedinteger nonlinear programming,MINLP),具有嚴重的非凸性、非線性和不連續(xù)性,求解極為困難。目前,換熱網(wǎng)絡問題的求解方法主要分為夾點技術法和數(shù)學規(guī)劃法。夾點技術法是基于熱力學原則提出的優(yōu)化方法,具有簡單實用的特點,但受限于變量維數(shù),難以應對大型換熱網(wǎng)絡問題的優(yōu)化需求。隨著計算機技術和優(yōu)化方法的發(fā)展,數(shù)學規(guī)劃法在求解復雜的換熱網(wǎng)絡問題中備受關注。
啟發(fā)式算法因具有強魯棒性和易操作性的優(yōu)點,已逐步成為換熱網(wǎng)絡的主要優(yōu)化方法。過去,如遺傳算法(GA)、粒子群算法(PSO)、模擬退火算法(SA)等經(jīng)典啟發(fā)式算法應用于換熱網(wǎng)絡綜合并表現(xiàn)出巨大的潛力。近年來,為應對換熱網(wǎng)絡優(yōu)化需求,提升優(yōu)化質量和效率,許多學者開發(fā)了混合算法、雙層算法及并行算法。Pav?o等提出了SA-RFO 混合算法,采用SA 算法和火箭尾焰優(yōu)化算法(rocket fireworks optimization,RFO)同步優(yōu)化整型變量和連續(xù)變量,提高了大型網(wǎng)絡的優(yōu)化效率。劉凱等提出一種雙層優(yōu)化算法,采用Alopex 進 化 算 法(Alopex evaluation algorithm,AEA)優(yōu)化結構的分流比,PSO 算法優(yōu)化換熱量,通過分離變量提高結構組合變異能力,同時結合不可行解修復策略提高算法局部搜索能力。Aguitoni等提出的雙層算法,其中SA 算法提供網(wǎng)絡拓補,差分進化算法(DE)則在固定結構上優(yōu)化連續(xù)型變量,取得良好效果。Santos 等則提出一種雙層算法,其中外層使用SA 算法優(yōu)化整型變量而內層使用PSO算法優(yōu)化連續(xù)變量,并基于一種減少決策變量的新模型,有效降低了優(yōu)化難度。為提高求解效率,康麗霞等提出了CPU+GPU 異構系統(tǒng)下的并行GA算法,大幅降低了求解時間,但未應用于大型換熱網(wǎng)絡。姜楠等提出了并行BB/SQP 混合算法,其中利用分支定界算法(BB)篩選可行結構,采用序貫二次規(guī)劃算法(SQP)對初始結構進行非線性規(guī)劃,并結合GPU 并行計算獲得了顯著加速效果。Pav?o等將一種GA/PSO混合算法并行化處理,極大提高了個體單次迭代速度。周志強等則提出了RWCE-GA 混合算法,其中強制進化隨機游走算法(RWCE)進行同步優(yōu)化,GA 算法則周期性雜交個體增強整型變量搜索能力,結合多核并行計算,提高了算法優(yōu)化質量和效率。
強制進化隨機游走算法(RWCE)是肖媛等提出的一種新型啟發(fā)式算法,種群間無信息交流,獨特的接受差解機制可跳出局部陷阱,具有極強的全局搜索能力,避免了算法過早收斂問題。但RWCE算法在保證全局搜索能力時,難以兼顧局部搜索。算法因接受差解而難以搜索到局部最小極值點,存在差解代替優(yōu)解情況。為彌補這一缺陷,肖媛提出了一種精細搜索的后處理方法,將獲得的固定結構再次精細搜索。該策略提高了算法局部領域的搜索精度,但未能解決優(yōu)化過程優(yōu)解被替代問題。因此鮑中凱等提出一種結構保護策略,通過建立對應的平行種群接收過程結構并實時精細搜索,保護了過程優(yōu)解,但因平行種群消耗了計算機算力而嚴重限制源種群規(guī)模,削弱了算法全局搜索能力。
基于此,為平衡算法的全局與局部優(yōu)化能力并降低大型換熱網(wǎng)絡優(yōu)化時間,本文提出并行雙層RWCE 算法。算法基于OpenMP 并行技術,通過分配線程構建層級關系,其中基礎層保持強悍的全局優(yōu)化能力,精細層則采用精細搜索策略提高算法的局部搜索能力。最后,優(yōu)化2個大型換熱網(wǎng)絡算例進行驗證,結果表明并行雙層RWCE 算法提高了局部搜索精度,保護了過程潛在優(yōu)解,同時在并行計算加持下,全局搜索能力也大幅提高。
本文基于節(jié)點非結構(node-wise nonstructural superstructure,NW-NSS)模型優(yōu)化換熱網(wǎng)絡,模型初始化時為空節(jié)點網(wǎng)絡,冷熱流股呈逆流布置,各流股節(jié)點數(shù)量、分流分支數(shù)及分支上節(jié)點數(shù)均可自主預設。模型結構如圖1 所示,具有2熱流股和2條冷流股,分別以和表示;冷熱流股上設有3 主節(jié)點,分別用和表示;冷流股上3 支分流和熱流股2 支分流,分別以和表示。換熱器由冷熱流股上的空節(jié)點隨機匹配連接形成,圖中有4個換熱器,如連接的實心點所示;冷公用工程和熱公用工程處于流股末端,以調節(jié)未到達目標溫度的流股。換熱器節(jié)點匹配關系和換熱量的隨機游走實現(xiàn)換熱網(wǎng)絡的全局優(yōu)化。
圖1 模型
該模型以年綜合費用(total annual cost,TAC)最小為優(yōu)化目標,目標函數(shù)如式(1)。其中前3項為換熱器和公用工程設備的固定投資費用、面積費用;后兩項為冷熱公用工程能源消耗費用。
式中,、分別為熱、冷流體股數(shù);為流股總節(jié)點數(shù);為0-1 變量,值為1 時表示該節(jié)點上存在換熱器或冷熱公用工程,值為0時表示為空節(jié)點;為固定投資費用;為面積費用系數(shù);為面積費用指數(shù);、為冷、熱公用工程的運行費用系數(shù);、、為換熱器和冷熱公用工程的面積;、為冷熱公用工程熱量消耗量。
換熱面積計算如式(2)。
式中,為換熱器總傳熱系數(shù);LMTD 為對數(shù)平均溫差。
流股熱平衡如式(3)、式(4)所示。
式中,和分別為熱流股和冷流股溫度;in和out代表流股上節(jié)點的進口和出口溫度;和分別代表冷熱流股的主節(jié)點數(shù);和分別代表冷熱流股分流數(shù)。
換熱器及公用工程熱平衡如式(5)~式(8)所示。
式中,為流股末端目標溫度。
分流匯合溫度約束如式(9)、式(10)所示。
式中,Δ為最小傳熱溫差。在追求最小年綜合費用時,目標函數(shù)的換熱面積費用作為隱含約束,杜絕了換熱面積無限大等不合理情況,同時為更好與其他文獻優(yōu)化結果對比。因此文中最小傳熱溫差設定為0℃,旨在于拓寬算法的搜索路徑,實際上優(yōu)解均不會出現(xiàn)過小溫差,優(yōu)化時出現(xiàn)違反溫差約束則采用懲罰函數(shù)進行糾偏。
RWCE 算法是肖媛等提出的新型啟發(fā)式算法,割裂種群間個體信息交流以保持種群多樣性,獨特的接受差解機制可有效跳出局部極值陷阱,對于高度非凸非線性的換熱網(wǎng)絡優(yōu)化難題具有極強的全局搜索能力。應用于換熱網(wǎng)絡時,算法詳細步驟見下文2.3節(jié),基礎RWCE算法流程如圖2所示。
圖2 基礎RWCE算法流程
圖2 中以隨機數(shù)決定是否接受新結構這一步驟,是基礎RWCE 算法的接受差解機制,是跳脫局部陷阱的關鍵,可有效提高算法的全局搜索能力。也正因如此,該機制在局部領域搜索時,難以搜尋到最小極值點。在具有眾多極值的解空間內,基礎算法搜尋到的解均與其領域內的極值點存在一定差距。因此,算法最后得到的解不一定為該解空間的最小極值,存在最小極值被替代的現(xiàn)象。換熱網(wǎng)絡規(guī)模越大,極值點越多,則越容易出現(xiàn)差解代替優(yōu)解的現(xiàn)象。
基礎算法因局部搜索精度低造成了該不良現(xiàn)象,增強局部搜索能力則可有效避免。若為了提高局部搜索精度,簡單地降低接受差解概率或減小游走步長,則破壞了全局搜索能力,易致使算法早熟收斂。因此,最佳方案是建立另一層算法,持續(xù)對基礎算法的當前解進行精細搜索,既保持了基礎算法的強全局搜索能力,又能提高搜索精度,避免優(yōu)解被替代。但另一方面,換熱網(wǎng)絡優(yōu)化時間隨問題規(guī)模增大而急速增加,一些大型換熱網(wǎng)絡算例因優(yōu)化時間長而嚴重限制了算法的種群數(shù)量,致使算法的全局搜索能力大幅削弱。若簡單地建立雙層算法,會額外消耗算力再度降低算法全局搜索能力,導致全局與局部搜索能力失衡加劇。
基于上述分析,本文提出一種并行雙層RWCE算法。一方面基于多核并行技術,極大增加初始種群基數(shù),降低優(yōu)化時間。另一方面,根據(jù)該技術特點,通過線程分配構建雙層算法,不干擾基礎算法強大的全局搜索能力的情況下提升局部搜索能力,同時可根據(jù)需求調整線程分配,平衡算法全局與局部搜索能力。
采用Fortran+OpenMP并行編程模型實現(xiàn)算法并行化。OpenMP 是基于線程共享內存體系的并行編程模型(圖3)。對于多核計算機而言,單個CPU核心可包含一或多個線程,并行時可將計算機內存劃分為所有線程可訪問和僅特定線程可訪問的共享存儲空間和私有存儲空間,以此進行線程間的信息互通與保護?;贠penMP模型的程序運行時采用的是Fork-Join并行執(zhí)行方式,如圖4所示。當程序開始時只有主線程進行串行計算,進入并行域后則開辟其他線程共同執(zhí)行域內任務,離開并行域后則只保留主線程串行運行。
圖3 內存共享模型
圖4 OpenMP程序并行執(zhí)行方式
2.3.1 層級關系
并行雙層RWCE 算法分為基礎層和精細層,基礎層與精細層分屬不同線程,均開辟各自私有變量存儲空間,避免線程變量沖突。精細層從屬于基礎層,兩層間通過共享變量建立信息單向傳遞通道,當基礎層更新最優(yōu)解時向精細層傳遞結構信息,精細層對該結構精細搜索并記錄當前最優(yōu)解和歷史最優(yōu)解。
大型換熱網(wǎng)絡解空間內遍布二元變量和連續(xù)型變量的局部陷阱,若算法缺乏全局搜索能力則易導致早熟收斂。肖媛和鮑中凱等均證實換熱網(wǎng)絡解的優(yōu)良程度主要取決于全局尋優(yōu)能力。算法可根據(jù)全局與局部搜索需求自主分配線程,本文中精細層分配一個線程,剩余線程全部分配給基礎層以增大種群規(guī)模。基礎層以全局搜索能力為主,在全局范圍內搜尋費用最低的解空間,當基礎層搜尋到費用更低的解則傳遞給精細層。精細層則對該解的局部領域進行高精度的精細搜索,以局部解空間的最小極值點為目標?;A層與精細層能力互補,相互配合平衡全局與局部搜索,并行雙層RWCE 算法流程如圖5所示。
圖5 并行雙層RWCE算法流程
2.3.2 基礎層
基礎層為基礎RWCE 算法,并設置較大的游走步長和接受差解概率,保持強勁的全局搜索能力。算法主要流程不變,增設一信息單向傳遞環(huán)節(jié)。當基礎層更新其最優(yōu)解時,將其傳遞給精細層進行精細搜索。主要步驟如下。
Step1:種群初始化。隨機產(chǎn)生個初始種群,各種群內有個體,個體起始狀態(tài)為空網(wǎng)絡結構。
Step2:隨機游走階段。個體以一定概率對現(xiàn)有換熱單元熱負荷或分流比SPH、SPC任一變量進行游走。當任一變量小于閾值時消除該換熱器。如式(13)。
式中,、為在(0,1)均勻分布的隨機數(shù);為判斷是否執(zhí)行的0-1變量;Δ為最大游走步長。
Step3:新單元生成階段。個體以一定概率在冷熱流股空節(jié)點上形成新單元,并賦予新單元初始換熱量、冷熱流股上的分流比。如式(14)~式(16)。
冷熱流股的初始分流比由隨機數(shù)給定,因此各分支分流比之和可能不為1,在計算時需歸一化處理。以熱流股為例,如式(17)。
式中,、、為(0,1)均勻分布的隨機數(shù);為最大初始熱量。
Step4:選擇與變異階段。個體游走后成為新的狀態(tài)點,此時以TAC 作為評判指標,費用降低則選擇此狀態(tài)作為下一次迭代的起點;若費用反而升高,則返回游走前原狀態(tài)點,或者以一定概率接受該狀態(tài)點繼續(xù)迭代。如式(18)。
式中,和′分別為游走前后的狀態(tài)點;為游走變量;為接受差解概率;it為迭代次數(shù)。
Step5:結束條件。當滿足迭代步數(shù)時結束程序,否則返回Step2繼續(xù)迭代。
2.3.3 精細層
精細層沿用RWCE 算法,但不產(chǎn)生初始結構,當基礎層最優(yōu)解更新時則接收結構信息并進行精細搜索,主要步驟如下。
Step1:種群初始化。由于僅單線程工作,因此只有單種群個體。采用發(fā)散搜索策略,將接收的結構或精細層自身結構賦值給所有個體,利用RWCE算法個體獨立進化特點,使各個體初始點發(fā)散分布在局部領域范圍內,更快搜索到最小極值點。
Step2:隨機游走階段。相對于基礎層,精細層采用降維搜索策略。游走步長較基礎層縮小1~2個量級,并以換熱單元數(shù)量為指標降低決策變量游走頻率,游走時選擇部分換熱單元中、SPH和SPC 任一變量,減少變量間同步優(yōu)化引起的干擾,提高局部搜索精度,如式(19)、式(20)。
式中,為當前結構換熱器數(shù)量;為精細層優(yōu)化變量;Δ為精細層游走步長;為0-1 為變量。
Step3:換熱單元生成階段。操作同基礎層,但新單元的生成概率和數(shù)量需大幅降低,避免對結構造成頻繁干擾,阻礙優(yōu)化進程。
Step4:選擇與接受差解階段。操作同基礎層,但接受差解概率較基礎層大幅降低。
Step5:終止條件判斷。當種群最優(yōu)個體費用在一定迭代步內降幅小于設定值時終止精細搜索程序;否則,返回Step2 繼續(xù)迭代,或定周期篩選精細層最優(yōu)解返回Step1再循環(huán)。
算法采用Fortran 編程,計算機操作系統(tǒng)為Windws10,CPU 為Intel(R) Xeon(R) Gold 6226R@2.90GHz(2處理器),最大核心數(shù)為32核,CPU可處理超線程運算。
現(xiàn)優(yōu)化H6C10算例驗證并行雙層RWCE算法的優(yōu)化性能,該算例包含6熱流股和10冷流股。節(jié)點非結構模型參數(shù)設置如下:冷熱流股上10 個主節(jié)點,冷熱流股分別設3 和8 分流,分流上均設1個節(jié)點。并行雙層RWCE算法僅啟用最低2線程測試基本性能,分別為基礎層和精細層?;A層參數(shù):基礎層共5 個體,換熱量游走步長1500kW,初始生成熱量2000kW,換熱單元生成概率0.2,接受差解概率0.01;精細層參數(shù):精細層共20個體,換熱量游走步長5kW,初始生成熱量25kW,換熱單元生成概率0.01,接受差解概率0.0001,千萬步內TAC 降幅小于0.02%時終止。其優(yōu)化結果如圖6所示。
圖6 精細層最優(yōu)費用和實時費用下降曲線
優(yōu)化時基礎層將所有過程最優(yōu)解傳遞給精細層精細搜索,因此精細層的解中包含當前優(yōu)化的實時精細解及記錄的歷史最優(yōu)解。觀察圖6發(fā)現(xiàn),精細層實時解多次出現(xiàn)費用上升的情況。即基礎層看似找到了費用更低的新解,但實際交由精細層精細搜索后發(fā)現(xiàn)較前一解費用更高,反映為優(yōu)解被差解替代現(xiàn)象。如5.62×10步更新后的實時精細解6686047USD/a 高于6655243USD/a 的最優(yōu)精細解,雖然兩個結果均優(yōu)于絕大部分文獻,但這種現(xiàn)象卻是基礎層的異?,F(xiàn)象,若無精細層則會導致上述差解替代優(yōu)解的情況。正如圖6所示,精細層起到了保護優(yōu)解的作用。
加速比是考究并行計算的重要指標,加速比為相同計算量下并行運算時間與串行運算時間的比值,加速比越接近啟用線程數(shù)則算法加速效率越高,加速比越大則程序加速性能越好?,F(xiàn)優(yōu)化H6C10 算例,保持相同參數(shù)設置,對并行雙層RWCE算法加速性能進行探究。并行雙層RWCE算法分別開辟5、10、15、20、25、30個線程,每個線程優(yōu)化1個個體。串行計算的基礎RWCE算法則相應優(yōu)化同等總個體數(shù),分別是5、10、15、20、25、30 個個體。經(jīng)過測試得,不同總個體數(shù)下每十萬次迭代的運行時間及加速比如圖7所示。
圖7 串并行運行時間和加速比
由圖7可看出,在相同的個體總數(shù)下,相較于串行計算,并行運行時間極短,計算時間都下降了1個量級,極大降低優(yōu)化時間成本。加速比隨著并行計算開辟的線程數(shù)呈先增后減趨勢,當啟用的線程數(shù)較少時,加速比接近于線程數(shù),效率高;但隨著啟用線程數(shù)增加,加速比增長減緩甚至倒退。呈現(xiàn)該現(xiàn)象主要原因是線程開辟越多越逼近計算機性能極限,導致并行運算時間增加,使加速比增幅減緩。因此,在計算機有算力盈余情況下,并行計算加速比隨線程數(shù)增加而增加,但加速效率隨線程數(shù)增加而降低。運算時間較串行計算大幅降低,可增大算法的種群數(shù)量從而提升全局搜索能力。
綜上所述,并行雙層RWCE 算法因種群規(guī)模擴大而具有更強的全局搜索能力,且獲得了高精度的局部搜索能力,解決了原算法差解代替優(yōu)解的問題。
20SP含有10股熱流體和10股冷流體,是大型換熱網(wǎng)絡的通用算例之一,具體參數(shù)詳見源文獻。換熱器和冷熱公用工程費用計算公式為8000+800(USD/a),冷熱公用工程能耗費用分別為10USD·(kW/a)和70USD·(kW/a)。
采用并行雙層RWCE 算法優(yōu)化該算例,模型參數(shù):網(wǎng)絡設置10個主節(jié)點,3分流數(shù),分流上1節(jié)點。算法參數(shù)如下,基礎層分配60 線程而精細層1 線程,共啟用61 線程?;A層參數(shù):共1200優(yōu)化個體,換熱量游走步長100kW,初始生成熱量150kW,換熱單元生成概率0.2,接受差解概率0.01;精細層參數(shù):共10優(yōu)化個體,換熱量游走步長5kW,初始生成熱量25kW,換熱單元生成概率0.01,接受差解概率0.0001。
并行雙層RWCE 算法優(yōu)化程序運行時間共17812s,加速比為26.0,精細層得到最優(yōu)解為1717405USD/a。表1 中文獻[22]采用遺傳模擬退火算法,獲得有分流的結果為1827772USD/a,運行時間為2786s, 本文在相同時間的結果為1726858USD/a;文獻[23]采用一種混合遺傳算法獲得最優(yōu)結果為1753271USD/a,優(yōu)化時間為2460s,本文在相同時間的結果為1727940USD/a;文獻[24]建立了一種隨機攝動機制,對換熱單元的隨機增減促進網(wǎng)絡結構變異,獲得結果1739079USD/a;文獻[25]采用落后個體更新策略,引導落后個體進化, 加強了個體間的競爭, 獲得結果為1730674USD/a;文獻[26]為解決換熱單元固定投資費用阻礙網(wǎng)絡結構變異問題,提出一種固定投資松弛策略,其結果為1726399USD/a。
表1 算例1優(yōu)化結果與文獻結果對比
圖8 為算例1 網(wǎng)絡結構,其中傳熱溫差最小的換熱器是H10 熱流股上第1 個單元,為14.47℃,符合實際情況。本文結構與文獻[26]的結構相比,換熱器數(shù)量多1 個共13 個、加熱器減少2 個共4個,冷卻器數(shù)量相同,但熱源和冷源的消耗量均減少了659.9kW。雖然換熱器的投資費用高出51726USD/a,但形成的結構更好回收了更多熱能,減少了公用工程投資和能耗費用共60720USD/a,使總費用降低了8994USD/a。本文結構換熱器更多,耦合關系更復雜,但年綜合費用更低,證明并行雙層算法的搜索能力更強。
圖8 算例1對應網(wǎng)絡結構
39SP包含22 股熱流體和17 股冷流體,是目前網(wǎng)絡規(guī)模最大的通用算例,流股參數(shù)可參考源文獻。換熱器和冷熱公用工程費用計算公式為8000+800(USD/a),冷熱公用工程能耗費用分別為10USD·(kW/a)和70USD·(kW/a)。該算例在優(yōu)化時,因網(wǎng)絡規(guī)模和結構復雜性導致計算量指數(shù)性增長,優(yōu)化時間十分長,即便是基于節(jié)點非結構模型,串行計算時其優(yōu)化個體數(shù)往往少于5個。對于十分依賴種群規(guī)模的RWCE 算法,時間成本極大限制了優(yōu)化個體數(shù),嚴重抑制了全局搜索能力。同時也因為該算例存在眾多結構,極值點更是星羅棋布,差解代替優(yōu)解現(xiàn)象更為頻繁,對于高精度的局部搜索能力需要更加緊迫。
優(yōu)化該算例時,模型參數(shù):網(wǎng)絡設置5個主節(jié)點,冷熱流股分別為2 和3 分流,分流上1 節(jié)點。并行雙層RWCE 算法參數(shù)如下,基礎層分配60 線程而精細層1線程,共啟用61線程?;A層參數(shù):共600個體,換熱量游走步長120kW,初始生成熱量150kW,換熱單元生成概率0.2,接受差解概率0.01;精細層參數(shù):共5 個體,換熱量游走步長5kW,初始生成熱量25kW,換熱單元生成概率0.01,接受差解概率0.0001。優(yōu)化時算法基礎層個體總數(shù)高達600個,遠超串行計算種群規(guī)模,全局搜索能力得到大幅提升。現(xiàn)對比串行RWCE 算法與并行雙層RWCE 算法的TAC 下降曲線,探究其優(yōu)化性能。
如圖9,在相同迭代步數(shù)內,并行雙層RWCE算法的基礎層最優(yōu)解為1895715USD/a 遠優(yōu)于串行計算的原RWCE 算法獲得的1925005USD/a,而且優(yōu)化全程都處于大幅領先地位,再次佐證并行雙層算法基礎層具備更強的全局搜索能力。如前文所述,RWCE算法個體獨立進化,種群規(guī)模是影響全局搜索能力的重要因素,通過并行技術在優(yōu)化大型換熱網(wǎng)絡時可大幅增加種群規(guī)模,在相同優(yōu)化時間內可獲得更優(yōu)的解。
圖9 并行雙層算法基礎層與原算法串行的性能比較
圖10 中為精細層實時解與最優(yōu)解的對比,可反映基礎層差解代替優(yōu)解的現(xiàn)象,由精細層記錄。圖中精細層一直存在實時解高于最優(yōu)解費用的現(xiàn)象,如5×10步時TAC為1894191USD/a覆蓋了TAC為1886613USD/a。這種現(xiàn)象由于基礎層誤判最小極值點而將差解替代了優(yōu)解,表明基礎層的搜索精度不足。但增加精細層可準確搜索到最小極值點并加以保護,避免被差解覆蓋。對比圖6和圖10可發(fā)現(xiàn),H22C17 較H6C10 算例基礎層差解代替現(xiàn)象更為嚴重。由此可知,網(wǎng)絡規(guī)模越大,基礎層差解代替優(yōu)解的異常現(xiàn)象越頻繁,精細層則越顯重要。
圖10 精細層實時費用于最優(yōu)費用曲線
精細層最優(yōu)結果為1886613USD/a,耗時34071s,加速比為26.6,文獻結果對比見表2,網(wǎng)絡結構如圖11 所示。39SP 算例目前的最優(yōu)結果由文獻[32]保持,采用子網(wǎng)絡重組策略和公用工程重置策略,在已知網(wǎng)絡結構上優(yōu)化得1852913USD/a,優(yōu)化時間為23832s,由于依賴已知結構,普適性略顯不足。文獻[6]采用SA-RFO 混合算法優(yōu)化所得,結果為1900614USD/a,優(yōu)化時間為24492s。文獻[31]則通過動態(tài)節(jié)點策略減少模型計算量,獲得優(yōu)化結果1910630USD/a。通過與文獻結構對比發(fā)現(xiàn),除本文和文獻[32]外,均存在C4流股公用工程未消去或C5 上公用工程過大的情況。而本文結構則是形成巧妙的耦合關系消去C4 的公用工程和減少了C5 公用工程能耗,且最小傳熱溫差只出現(xiàn)在H6 和H22 流股上的換熱器,為15.0℃,符合實際情況。其他文獻由于全局搜索能力不足或局部搜索精度不足,導致結構耦合程度差,或熱量分配不合理未能消去或減少C4、C5 上公用工程。相比文獻[31],雖然設備投資費用增加了13163USD/a,但是公用工程能源消耗費用下降了37180USD/a,總費用減少了24017USD/a。
圖11 算例2對應網(wǎng)絡結構
表2 算例2優(yōu)化結果與文獻結果對比
并行雙層RWCE 算法加速比理論上限為32(計算機核心為32),實際試驗中最高加速比是27.2,為啟用45超線程運算時獲得。算例1加速比是26.0,算例2 加速比是26.6,均為61 超線程運算,說明相同線程時問題規(guī)模越大,加速比也越大。但由于十分接近計算機性能極限,因此問題規(guī)模對加速比的增幅有限。線程數(shù)和問題求解規(guī)模均能影響加速比,原因在于問題規(guī)模越大,產(chǎn)生不同類型的運算指令越豐富越及時,在超線程處理下,可大幅減少CPU 不同計算部分的閑置時間,從而提高加速比。因此,在合理的并行線程數(shù)下,問題規(guī)模越大,加速比越大。
針對基礎RWCE 算法求解大規(guī)模換熱網(wǎng)絡時局部搜索精度不足的問題,本文提出了基于OpenMP 并行計算的并行雙層RWCE 算法。該算法結合了并行技術和原算法特點,通過線程分配構建基礎層和精細層,在優(yōu)化全程兼顧全局與局部搜索能力。此外,本文檢驗了并行雙層算法優(yōu)化質量與效率,相比于基礎算法,消除了差解代替優(yōu)解的不良現(xiàn)象,大幅提升了大型網(wǎng)絡的優(yōu)化效率。最后優(yōu)化20SP和39SP算例進行驗證,計算結果表明,算法全局搜索能力和局部搜索能力都得到強化,同時發(fā)現(xiàn)加速比隨線程數(shù)和問題規(guī)模增大而增大。這些特征對于大型換熱網(wǎng)絡優(yōu)化問題的高效準確求解具有重要指導意義。
然而,本文未與并行計算特點結合,研究相關優(yōu)化策略。作者將在此基礎上,充分發(fā)揮并行計算與RWCE 算法特性,進一步開發(fā)出提高換熱網(wǎng)絡質量的策略。
,,——換熱器、冷、熱公用工程的換熱面積,m
——換熱面積費用系數(shù)
,——冷、熱公用工程的運行費用系數(shù)
——設備固定投資費用,USD/a
FCP——流股的熱容流率,kW/℃
Δ——最大游走步長,KW
LMTD——對數(shù)平均溫差,℃
——流股總節(jié)點數(shù)
,——冷、熱流體股數(shù)
,——冷、熱流股的主節(jié)點數(shù)
,——冷、熱流股分流數(shù)
——當前結構換熱器數(shù)量
,′——迭代前后的個體
,——冷、熱公用工程熱量消耗量,kW
——最大初始熱量,kW
,,——(0,1)均勻分布的隨機數(shù)
SPC、SPH——冷、熱流股分流比
——流股末端目標溫度,℃
Δ——最小傳熱溫差,℃
——換熱器總傳熱系數(shù),kW/(m·℃)
——優(yōu)化變量
——表示0-1變量
——操作執(zhí)行概率,∈(0,1)
——面積費用指數(shù)
in,out——進出口
c,h——冷、熱流股編號
cn,hn——冷、熱流股主節(jié)點編號
cn,hf——冷、熱流股分流編號
it—— 迭代步數(shù)