蘇 康,黎知行,史 驥,李仕元,景順平
[1.中廣核(北京)仿真技術(shù)有限公司,深圳 518031;2.中廣核鈾業(yè)發(fā)展有限公司公司,北京 100029]
我國商用核電站乏燃料的去向一般為離堆干式貯存或后處理。傳統(tǒng)乏燃料運(yùn)輸方式是單起點(diǎn)與單終點(diǎn)“門到門”的公路運(yùn)輸,單批次運(yùn)輸2~3個(gè)貨包。隨著核電站增多,原有的運(yùn)輸模式已不能適應(yīng)當(dāng)前乏燃料離堆的緊迫性需求。近年來我國開展了乏燃料多式聯(lián)運(yùn)建設(shè),單批次最大運(yùn)輸量提升到10個(gè)貨包,傳統(tǒng)公路運(yùn)輸單批次運(yùn)輸模式對裝料排期的要求尚不明顯,然而在乏燃料多機(jī)組多式聯(lián)運(yùn)時(shí),裝料排期計(jì)劃的合理性尤為重要。
基于乏燃料多式聯(lián)運(yùn)單批次運(yùn)輸10個(gè)貨包,以及多核電基地、多臺機(jī)組和多個(gè)作業(yè)面同步裝料等狀況,通過統(tǒng)籌考慮各核電站乏燃料的外運(yùn)緊迫性,并根據(jù)后處理設(shè)施的能力與容器資源進(jìn)行動態(tài)調(diào)度,以實(shí)現(xiàn)乏燃料處理能力的進(jìn)一步提升。
高級計(jì)劃排程(Advanced Planning and Scheduling,APS)理論是對實(shí)際業(yè)務(wù)邏輯進(jìn)行抽象建模,以實(shí)現(xiàn)對計(jì)劃的制定與調(diào)度。文獻(xiàn)[1]報(bào)道,劉海江等研究APS與傳統(tǒng)能力需求計(jì)劃(Capacity Requirement Planning,CRP)的能力需求分析比較,發(fā)現(xiàn)APS具有整體規(guī)劃、計(jì)劃優(yōu)化和實(shí)時(shí)性這三個(gè)技術(shù)特點(diǎn);Rudber分析了APS的實(shí)施對鋼鐵加工公司戰(zhàn)術(shù)計(jì)劃水平的影響[2];Romero研究了批量化學(xué)加工行業(yè)中和財(cái)務(wù)管理有關(guān)的計(jì)劃和排程問題[3];張騰飛等利用APS系統(tǒng)解決了車間作業(yè)調(diào)度問題,重點(diǎn)是運(yùn)用改進(jìn)遺傳算法來解決經(jīng)典的作業(yè)調(diào)度和柔性作業(yè)調(diào)度問題,并驗(yàn)證了算法的性能[4];吳雁等提出了一種基于制造執(zhí)行系統(tǒng)(ManufacturingExecution System,MES)的機(jī)加高級計(jì)劃排程的應(yīng)用框架,并通過實(shí)際的應(yīng)用案例來驗(yàn)證該框架[5];肖牧山等提出了基于約束理論(Theory of Constraints,TOC)和鼓-緩沖 -繩(Drum-Buffer-Rope,DBR)模型的APS系統(tǒng)與企業(yè)資源計(jì)劃(Enterprise Resource Planning,ERP)集成的解決方案,并給出了APS與ERP集成的潛在問題和可行方案[6];沈潔鋒等對乏燃料的管理方式以及我國乏燃料管理的現(xiàn)狀進(jìn)行了分析討論[9];李曉娟等利用信息技術(shù)、物聯(lián)網(wǎng)和大數(shù)據(jù)等技術(shù)手段,通過提升設(shè)備智能化水平完善運(yùn)輸保障,搭建智能化監(jiān)管平臺和應(yīng)急響應(yīng)平臺以實(shí)現(xiàn)全過程的可視化監(jiān)管和快速反應(yīng)上報(bào)等,保障危險(xiǎn)品的安全運(yùn)輸[7]。涉及乏燃料調(diào)度體系的研究鮮少,故劉群等認(rèn)為需要建立乏燃料調(diào)度體系,以實(shí)現(xiàn)各環(huán)節(jié)的高效調(diào)度與統(tǒng)籌協(xié)調(diào)[8]。
綜上所述,在APS的應(yīng)用和研究方面,APS理論多應(yīng)用于生產(chǎn)制造領(lǐng)域,尚未用于乏燃料運(yùn)輸領(lǐng)域。本文根據(jù)乏燃料運(yùn)輸計(jì)劃的特點(diǎn),基于運(yùn)輸計(jì)劃的業(yè)務(wù)邏輯,應(yīng)用APS理論,建立了混合整數(shù)規(guī)劃模型,并兼顧模型的規(guī)模與未來的拓展性,設(shè)計(jì)了一種啟發(fā)式算法實(shí)現(xiàn)加快模型求解過程。
在單次運(yùn)輸計(jì)劃中,裝料環(huán)節(jié)耗時(shí)長,在整個(gè)周期中占比大,且各機(jī)組的裝料時(shí)間窗不同,故裝料排期計(jì)劃不同導(dǎo)致裝料完工時(shí)間不同。裝料環(huán)節(jié)按各電站內(nèi)其機(jī)組的外運(yùn)緊迫性,以及各機(jī)組的裝料時(shí)間窗、容器數(shù)量上限和各后處理廠的卸料時(shí)間窗等約束條件,對多臺機(jī)組進(jìn)行空容器分配,并兼顧單個(gè)貨包裝載高燃耗組件至卸料全過程低于6個(gè)月的前提下,以期使裝料完工時(shí)間最短。
(1)各機(jī)組有多個(gè)不可裝料時(shí)間窗;
(2)不考慮總成本變化;
(3)不考慮電站間空閑作業(yè)面調(diào)度分配;
(4)不考慮裝/卸空容器時(shí)間;
(5)所有容器的容量相同;
(6)單個(gè)容器裝/卸料時(shí)間為11/15 d;
(7)換裝、海運(yùn)和鐵運(yùn)時(shí)間均為固定標(biāo)準(zhǔn)時(shí)間;
(8)每個(gè)電站最少配置1套作業(yè)面(1輛公路運(yùn)輸車和裝/卸料專業(yè)設(shè)備等);
(9)裝料無搶占性,即不允許任意作業(yè)面的裝料插入另一作業(yè)面的裝料過程中;
(10)各機(jī)組裝料任務(wù)必須連續(xù)作業(yè)。
本文涉及的參數(shù)和符號如表1所示。
表1 符號說明Table 1 Parameter description
乏燃料裝料排期計(jì)劃涉及裝料任務(wù)完成時(shí)間優(yōu)先和外運(yùn)緊迫性優(yōu)先兩個(gè)目標(biāo)。
裝料任務(wù)完成時(shí)間目標(biāo):
外運(yùn)緊迫性目標(biāo):
其中,wij=Cij/Lij
將不同目標(biāo)歸一化后采用加權(quán)的方法求解。時(shí)間目標(biāo)是求解單個(gè)作業(yè)面的最大完工時(shí)間,外運(yùn)緊迫性目標(biāo)是求解所有機(jī)組外運(yùn)緊迫性的最高值,因此將單目標(biāo)設(shè)為最大值函數(shù)??紤]到實(shí)際場景中兩者的相對重要程度,將早期的時(shí)間設(shè)置更高的權(quán)重,使裝料計(jì)劃被提前執(zhí)行,以節(jié)省總體裝料時(shí)間,降低計(jì)劃的完成時(shí)間。確定的目標(biāo)函數(shù)如式(3)所示。
其中:
公式(1)為時(shí)間目標(biāo),即最小化最大完工時(shí)間,指從第一個(gè)機(jī)組裝料開始時(shí)間到最后一個(gè)機(jī)組卸料完成所耗時(shí)間的最小化;
公式(2)為外運(yùn)緊迫性優(yōu)化目標(biāo),即優(yōu)先到外運(yùn)緊迫性高的機(jī)組裝料;
公式(3)為多目標(biāo)歸一化后的目標(biāo)函數(shù),即在滿足盡早開始裝料時(shí)間的前提下,外運(yùn)緊迫性高的機(jī)組優(yōu)先開始裝料;
公式(4)表示每個(gè)機(jī)組每次分配容器上限,即第j個(gè)機(jī)組最多分配μj個(gè)容器次;
公式(5)表示總分配容器次數(shù)量上限,即各機(jī)組分配容器次等于目前擁有的容器次;
公式(6)表示作業(yè)面數(shù)量上限,即同一時(shí)刻i、同一作業(yè)面k下,只能存在一個(gè)機(jī)組j裝料;
公式(7)表示單機(jī)組不可同時(shí)裝多個(gè)容器,即同一時(shí)刻i、同一機(jī)組j下,只能存在一個(gè)作業(yè)面k進(jìn)行裝料;
公式(8)表示外運(yùn)緊迫性約束,根據(jù)各機(jī)組存量占比將外運(yùn)緊迫性進(jìn)行分級處理;
公式(9)表示總運(yùn)輸完成時(shí)間滿足時(shí)長約束;
公式(10)為變量取值約束。
整個(gè)運(yùn)輸計(jì)劃的裝料排期問題本質(zhì)上屬于車輛路徑問題(Vehicle Routing Problem,VRP),而VRP是典型的非確定性多項(xiàng)式難題(nondeterministic polynomial hard,NP-hard),故裝料排期計(jì)劃也屬于NP-hard問題。
本文建立的模型中既有連續(xù)變量又有整數(shù)變量,為混合整數(shù)規(guī)劃模型。從可拓展可推廣的角度出發(fā),設(shè)計(jì)基于優(yōu)先規(guī)則的啟發(fā)式算法來求解該問題。其求解流程如圖1所示。
圖1 求解流程Table 1 Solve loop
首先根據(jù)單次計(jì)劃需要處理的乏燃料數(shù)量,確定需要使用的總空容器的數(shù)量;然后基于一定的分配策略將空容器分配到各機(jī)組,及時(shí)運(yùn)走對應(yīng)機(jī)組燃料池中的乏燃料,使得各機(jī)組能夠穩(wěn)定安全運(yùn)行。
當(dāng)單次計(jì)劃需要處理的乏燃料數(shù)量不同時(shí),需要使用的空容器數(shù)量也不同。對于分配策略的選擇,既可依各機(jī)組外運(yùn)緊迫性的大小排序,亦可任意分配,以尋找單次運(yùn)輸計(jì)劃用時(shí)最短的分配方案,并要滿足各機(jī)組緊迫性的上下限。
根據(jù)緊迫性大小排序進(jìn)行分配,人工干預(yù)的程度較大,找到的方案與最優(yōu)解的距離較大。如果任意分配,當(dāng)需要使用的空容器數(shù)量比較多時(shí),計(jì)算成本較大,需要由代碼的執(zhí)行效率決定。本文采取上述二者之間折中的方案,具體步驟如下:
Step1:輸入數(shù)據(jù)和相關(guān)參數(shù)。
Step2:隨機(jī)生成各組件狀態(tài)信息,根據(jù)組件狀態(tài)分析各機(jī)組組件的最小冷卻時(shí)間,以及在裝料計(jì)劃開始時(shí)間時(shí)是否完成冷卻。
Step3:基于各組件完成冷卻時(shí)間確定計(jì)劃開始時(shí)間時(shí)各機(jī)組的最大可外運(yùn)量。
Step4:加入各機(jī)組的不可裝料時(shí)間窗和后處理廠的卸料時(shí)間窗。
Step5:創(chuàng)建模型,加入外運(yùn)緊迫性權(quán)重,建立多目標(biāo)歸一化的總運(yùn)輸時(shí)間最小化目標(biāo)函數(shù)。
Step6:添加各項(xiàng)約束條件。
Step7:設(shè)置解池參數(shù),允許輸出多個(gè)滿足時(shí)長約束的分配方案。
Step8:執(zhí)行算法。每確定一個(gè)機(jī)組的容器分配順序和數(shù)量,各機(jī)組外運(yùn)緊迫性也會隨之進(jìn)行更新迭代,直至將空容器全部分配完畢。
Step9:輸出結(jié)果。輸出單次運(yùn)輸計(jì)劃總運(yùn)輸時(shí)間、貨包視角的裝/卸料開始及結(jié)束時(shí)間、各機(jī)組分配的容器數(shù)以及多個(gè)具體可行方案。
以2個(gè)電站、12臺機(jī)組為例,設(shè)定10臺容器、3個(gè)作業(yè)面和2個(gè)后處理廠,裝料開始時(shí)間為2022年11月11日。各機(jī)組池中組件狀態(tài)信息見表2,各機(jī)組與后處理廠的不可裝卸料時(shí)間窗信息分別見表3和表4,各機(jī)組的外運(yùn)緊迫性見表5。
表2 池中組件狀態(tài)信息Table 2 Spent fuel assembly status
表3 機(jī)組不可裝料時(shí)間窗Table 3 Unit unavailable charge date
表5 機(jī)組外運(yùn)緊迫性Table 5 Unit transport urgency
首先根據(jù)池中組件狀態(tài)信息,結(jié)合乏燃料最小冷卻時(shí)間表,確定每個(gè)機(jī)組最多可外運(yùn)的組件數(shù),以確定各機(jī)組可分配的容器上限。
其次根據(jù)各機(jī)組的外運(yùn)緊迫性和不可外運(yùn)時(shí)間窗,將既有的容器分配給各機(jī)組,得到若干個(gè)可行且在時(shí)間上最優(yōu)的方案。
最后根據(jù)運(yùn)輸各子環(huán)節(jié)預(yù)設(shè)時(shí)間,推導(dǎo)每個(gè)容器開始裝料與裝料完成時(shí)間,開始卸料與卸料完成時(shí)間,并分析得到的方案是否符合從裝料開始到卸料結(jié)束的時(shí)間約束。
算法結(jié)果最終輸出多個(gè)滿足約束條件的可行方案。以第一個(gè)輸出方案為例,求解結(jié)果如表6所示,A電站內(nèi)A1機(jī)組分配3個(gè)容器,A5機(jī)組分配2個(gè)容器,D電站內(nèi)D1機(jī)組分配3個(gè)容器,D4機(jī)組分配2個(gè)容器,單次運(yùn)輸計(jì)劃總運(yùn)輸時(shí)長為137天,各容器運(yùn)輸時(shí)間均滿足180天約束。此外,算法將輸出具體可行方案運(yùn)輸批次及時(shí)間節(jié)點(diǎn),如表7所示,第一批次裝料計(jì)劃分配給A1、A3、D1各1臺容器,第二批次分配給A3、D1、D4各1臺容器,第三批次分配給A1、D1、D4各1臺容器,第四批次分配給A1機(jī)組1臺容器。
表6 第1種方案求解結(jié)果Table 6 Plan 1 solution result
表7 第1種方案的時(shí)間約束判定Table 7 Plan 1 time constraint determination
在乏燃料實(shí)際單次運(yùn)輸計(jì)劃中存在許多不確定性,造成優(yōu)化方法應(yīng)用到實(shí)際運(yùn)輸過程上的局限性。離散仿真系統(tǒng)具有很好的模擬實(shí)際運(yùn)輸過程不確定情況的能力,但不具備良好的優(yōu)化能力。通過仿真軟件中搭建乏燃料單次運(yùn)輸計(jì)劃模型與算法的結(jié)果相結(jié)合的方式,驗(yàn)證裝料排期方案的合理性。建立仿真模型以模擬乏燃料單次運(yùn)輸計(jì)劃的運(yùn)輸過程,將算法所需數(shù)據(jù)輸入所建混合整數(shù)規(guī)劃模型中,運(yùn)用啟發(fā)式算法求解出裝料排期方案,將優(yōu)化方案輸入仿真模型中推演,與人工排期方案的仿真推演結(jié)果作對比,驗(yàn)證算法輸出方案的可執(zhí)行性與優(yōu)化性。
由表8可知,人工排期方案中A3機(jī)組分配容器數(shù)過多,而算法優(yōu)化計(jì)劃的容器分配更為均勻,理論上機(jī)組不會出現(xiàn)或較少出現(xiàn)裝料排隊(duì)現(xiàn)象。
表8 裝料計(jì)劃容器分配數(shù)量對比Table 8 Charge container allocation comparison
通過仿真系統(tǒng)分別輸入人工排期計(jì)劃、算法優(yōu)化計(jì)劃的數(shù)據(jù)進(jìn)行流程模擬,對比乏燃料單次運(yùn)輸計(jì)劃各環(huán)節(jié)所需時(shí)長及各容器的時(shí)間信息,見表9。
表9 各環(huán)節(jié)所需時(shí)間對比Table 9 link time consumption comparison
從表9可知,算法優(yōu)化方案中的“裝料與交接模塊”時(shí)長約40 d,較人工排期方案中的“裝料與交接模塊”時(shí)長約61 d節(jié)約21 d,同時(shí)受裝料時(shí)間影響,算法優(yōu)化方案較人工排期方案的“節(jié)點(diǎn)碼頭貨包暫存模塊”時(shí)長節(jié)約22 d左右。
由表10可知,人工排期方案和算法優(yōu)化方案均能滿足時(shí)間約束,但算法優(yōu)化計(jì)劃中各貨包占用的時(shí)長短于初始裝料計(jì)劃,使得單次運(yùn)輸計(jì)劃更具可執(zhí)行性。
表10 貨包時(shí)間信息對比Table 10 Package existence time comparison
綜合上述容器分配數(shù)量、各環(huán)節(jié)所需時(shí)間和貨包時(shí)間3個(gè)方面的對比,表明提出的模型在運(yùn)輸計(jì)劃裝料排期環(huán)節(jié)的優(yōu)化方案,有效縮短了整個(gè)裝料環(huán)節(jié)時(shí)間,提高了運(yùn)輸計(jì)劃的可執(zhí)行性。
本文針對乏燃料單次運(yùn)輸計(jì)劃中多約束的裝料排期問題,以最小化運(yùn)輸時(shí)間為目標(biāo)建立了優(yōu)化模型,利用基于優(yōu)先規(guī)則的啟發(fā)式算法求解該混合整數(shù)規(guī)劃模型。在算例分析中,分析多約束條件對裝料排期的影響,結(jié)果表明該優(yōu)化方案推演的運(yùn)輸時(shí)長優(yōu)于人工排期方案,不僅節(jié)省大量人力,還為乏燃料單次運(yùn)輸計(jì)劃的制訂提供實(shí)用價(jià)值。