周登舉 ZHOU Deng-ju;王韋棋 WANG Wei-qi
(安徽工業(yè)大學(xué)管理科學(xué)與工程學(xué)院,馬鞍山 243032)
熱軋是鋼鐵生產(chǎn)過(guò)程中最重要的工序之一,直接影響產(chǎn)品的質(zhì)量。加熱爐是熱軋工序的輔助設(shè)備,也是熱軋階段的瓶頸環(huán)節(jié),對(duì)鋼坯實(shí)現(xiàn)連續(xù)熱軋起到重要的調(diào)節(jié)作用。因此,加熱爐和熱軋的調(diào)度優(yōu)化問(wèn)題一直是學(xué)者和專家們研究的重點(diǎn)內(nèi)容。目前,相關(guān)研究主要集中于加熱爐調(diào)度、熱軋調(diào)度和加熱爐-熱軋集成調(diào)度三個(gè)方面。
關(guān)于加熱爐調(diào)度研究,楊[1]等認(rèn)為加熱爐調(diào)度是在軋制計(jì)劃和連鑄出坯計(jì)劃已確定的前提下,決定鋼坯在加熱爐區(qū)的加工路徑。其目標(biāo)通常為燃料消耗最小[2,3]、住爐時(shí)間最小[3]等。
關(guān)于熱軋調(diào)度問(wèn)題的研究,Liu[4]等將其歸納為多旅行商問(wèn)題,Chen[5]等則將其描述為車輛路徑問(wèn)題。熱軋調(diào)度的目標(biāo)大多為最小化跳躍懲罰成本[6]和最小化軋制單元數(shù)量[7]。文獻(xiàn)[4]在前人研究的基礎(chǔ)上,將噸鋼能耗考慮進(jìn)去,建立了以最小化噸鋼能耗和最小化軋制單元數(shù)為目標(biāo)的數(shù)學(xué)模型。
近年來(lái),加熱爐-熱軋集成調(diào)度逐漸成為研究熱點(diǎn),學(xué)者們紛紛提出集成調(diào)度模型的建模方法,如文獻(xiàn)[8]分析了加熱爐對(duì)熱軋生產(chǎn)的影響,抽取板坯標(biāo)準(zhǔn)住爐時(shí)間和出爐溫度這兩個(gè)關(guān)鍵因素,建立了熱軋板坯軋制計(jì)劃的整數(shù)規(guī)劃模型、文獻(xiàn)[9]將問(wèn)題建模為兩個(gè)耦合的子問(wèn)題,分別用于求解軋制計(jì)劃和加熱爐調(diào)度方案。目標(biāo)函數(shù)有最大化熱裝比[9]、最小化住爐時(shí)間[9]等。
從現(xiàn)有的研究中可以看出,單獨(dú)的加熱爐和熱軋調(diào)度缺乏整體性考量,求出的調(diào)度方案無(wú)法兼顧多工序工藝約束和設(shè)備資源約束。而現(xiàn)有加熱爐-熱軋集成調(diào)度研究中,假設(shè)條件通常過(guò)于理想化,如軋機(jī)不允許空轉(zhuǎn)等待、不考慮加熱爐容量限制等。本文充分考慮軋制階段工藝約束和設(shè)備資源約束,以鋼坯的總完工時(shí)間最小、總住爐時(shí)間最小和軋機(jī)總待機(jī)時(shí)間最小為目標(biāo)建立數(shù)學(xué)規(guī)劃模型,并提出改進(jìn)的NSGA-II算法對(duì)模型進(jìn)行求解。本文的主要貢獻(xiàn)如下:
①模型方面:考慮加熱爐容量約束;考慮實(shí)際生產(chǎn)中的工藝約束,允許軋機(jī)短暫待機(jī);通過(guò)添加最小化軋機(jī)待機(jī)時(shí)間為目標(biāo),盡可能減少軋機(jī)待機(jī)的時(shí)間。
②算法方面:根據(jù)問(wèn)題特點(diǎn),設(shè)計(jì)多層編碼的染色體用以表征問(wèn)題的解;根據(jù)染色體中存在實(shí)數(shù)編碼的特點(diǎn)設(shè)計(jì)多點(diǎn)復(fù)合交叉的交叉策略;通過(guò)引入沖突檢測(cè)-修復(fù)模塊確保解的可行性。
本文針對(duì)一類典型的熱軋生產(chǎn)線展開(kāi)研究,每條生產(chǎn)線包含一臺(tái)加熱爐和一臺(tái)軋機(jī)。熱軋前,待軋制的鋼坯先進(jìn)入加熱爐加熱,達(dá)到額定加熱時(shí)間才允許出爐,鋼坯出爐后立即通過(guò)輥道運(yùn)送至軋機(jī)進(jìn)行軋制。其中,額定加熱時(shí)間是指鋼坯達(dá)到額定軋制溫度所需的最短加熱時(shí)間。軋制過(guò)程中,將鋼種、規(guī)格等屬性相同或相近的鋼坯組成批次集中軋制,使用同一套軋輥軋制的鋼坯稱為一個(gè)軋制單元。加熱爐-熱軋階段的工藝流程如圖1所示。
圖1 加熱爐-熱軋階段工藝流程圖
加熱爐-熱軋區(qū)間生產(chǎn)調(diào)度需要同時(shí)考慮加熱爐和軋機(jī)的工藝約束,兩者相互影響、相互制約。因此,為進(jìn)一步提高設(shè)備利用率和生產(chǎn)效率、降低加熱爐能耗,在編制加熱爐-熱軋集成調(diào)度方案時(shí),需考慮如下工藝約束和設(shè)備資源約束。
①加熱爐和軋機(jī)一一對(duì)應(yīng),可將有對(duì)應(yīng)關(guān)系的加熱爐和軋機(jī)視為一體,稱為生產(chǎn)線;
②同一軋制單元的鋼坯僅可由一條生產(chǎn)線加工;
③軋不同軋制單元時(shí),軋機(jī)需停機(jī)換輥;
④鋼坯有額定加熱時(shí)間和最大住爐時(shí)間,鋼坯實(shí)際住爐時(shí)間不得少于額定加熱時(shí)間,也不得大于最大住爐時(shí)間;
⑤鋼坯的入爐順序、出爐順序和軋制順序須保持一致,且與軋制單元計(jì)劃中鋼坯的加工順序相同;
⑥一臺(tái)加熱爐可同時(shí)加工多塊鋼坯,但不可超出容量限制,當(dāng)加熱爐裝滿時(shí)須等待鋼坯出爐,爐中有空位的情況下才能裝入新的鋼坯;
⑦由于軋機(jī)待機(jī)造成的損失較大,生產(chǎn)中要求軋機(jī)待機(jī)的時(shí)間不超過(guò)一個(gè)上限值。
為了方便描述模型,定義如下符號(hào):
2.1.1 參數(shù)
i,j:軋制單元索引,i,j∈{0,1,…,n,n+1},其中,0和n+1表示虛擬軋制單元,n表示軋制單元總數(shù);
k:生產(chǎn)線索引,k∈{1,2,…,m},其中m表示生產(chǎn)線總數(shù);
Ωi:軋制單元i中的鋼坯集合;
Ω:所有軋制單元中的鋼坯集合;Ω=Ω1∪Ω2∪…∪Ωn
l:鋼坯索引,l∈Ω;
ail:鋼坯l在軋制單元i中的加工序號(hào);
pil:軋制單元i中鋼坯l在加熱爐中的額定加熱時(shí)間;
wil:軋制單元i中鋼坯l在加熱爐中的最大住爐時(shí)間;
qil:軋制單元i中鋼坯l的軋制時(shí)間;
Si:軋制單元i的開(kāi)軋時(shí)間;
Qi:軋制單元i的軋制時(shí)間;
rilk:若軋制單元i中鋼坯l在生產(chǎn)線k上的加熱爐中加熱,則rilk=1,否則rilk=0;
β:鋼坯從加熱爐到軋機(jī)的運(yùn)輸時(shí)間;
δ:同爐相鄰鋼坯的最小入爐時(shí)間間隔;
ε:軋機(jī)允許的最大待機(jī)時(shí)長(zhǎng);
φ:相鄰兩個(gè)軋制單元之間的軋機(jī)換輥時(shí)間;
Ck: 生產(chǎn)線k上加熱爐的容量上限;
γ(ilt):若,則為1,否則為0;
ρ(k,t):表示t時(shí)刻加熱爐k中鋼坯的數(shù)量;
T:全部鋼坯加熱完成的最大時(shí)間;
U:一個(gè)足夠大的正數(shù)。
2.1.2 決策變量
xik:若軋制單元i在生產(chǎn)線k上加工,則xik=1,否則xik=0;
yijk:若軋制單元i和j均在生產(chǎn)線k上加工,且j緊隨i之后進(jìn)行加工,則yijk=1,否則yijk=0;
爐容受限的加熱爐-熱軋集成調(diào)度的數(shù)學(xué)模型如下:
目標(biāo)函數(shù)(1)最小化總完工時(shí)間;目標(biāo)函數(shù)(2)最小化鋼坯總住爐時(shí)間;目標(biāo)函數(shù)(3)最小化軋機(jī)總待機(jī)時(shí)間;約束(4)每個(gè)軋制單元只能分配到一條生產(chǎn)線上加工;約束(5)所有軋制單元有且僅有一個(gè)前序軋制單元和一個(gè)后繼軋制單元;約束(6)虛擬軋制單元0被安排在每條線的第一位;約束(7)虛擬軋制單元n+1被安排在每條生產(chǎn)線的最后一位;約束(8)在相同軋機(jī)上連續(xù)加工的兩個(gè)軋制單元,后者開(kāi)工時(shí)間要大于前者完工時(shí)間加軋機(jī)換輥時(shí)間;約束(9)鋼坯軋制開(kāi)始時(shí)間等于出爐時(shí)間加上加熱爐到軋機(jī)的運(yùn)輸時(shí)間;約束(10)軋制單元的開(kāi)軋時(shí)間即為單元中第一塊鋼坯的開(kāi)軋時(shí)間;約束(11)軋制單元的軋制時(shí)間等于單元中最后一塊鋼坯軋制完工時(shí)間減去軋制單元的開(kāi)軋時(shí)間;約束(12)同一軋制單元內(nèi)的相鄰兩塊鋼坯,入爐的時(shí)間間隔必須大于等于最小入爐時(shí)間間隔;約束(13)鋼坯實(shí)際住爐時(shí)間應(yīng)在額定加熱時(shí)間至最大住爐時(shí)間范圍內(nèi);約束(14)同一軋制單元內(nèi)的相鄰兩塊鋼坯,后者開(kāi)工時(shí)間要大于前者完工時(shí)間和軋機(jī)待機(jī)時(shí)間不能過(guò)長(zhǎng);約束(15)加熱爐中同時(shí)加熱的鋼坯數(shù)不可超出容量限制;約束(16)決策變量取值約束。
加熱爐-熱軋集成調(diào)度問(wèn)題作為NP-hard問(wèn)題,短時(shí)間無(wú)法獲得最優(yōu)解,一般使用智能優(yōu)化算法獲取滿意解。NSGA-II是常見(jiàn)的多目標(biāo)優(yōu)化算法,但考慮到模型中加熱爐容量限制,傳統(tǒng)的NSGA-II算法獲得的解不完全可行。因此,本文通過(guò)引入沖突檢測(cè)-修復(fù)模塊對(duì)不可行的解進(jìn)行修復(fù)。
染色體采用三段實(shí)數(shù)編碼形式,由軋制單元所在生產(chǎn)線編號(hào)、鋼坯的開(kāi)始加熱時(shí)間和開(kāi)始軋制時(shí)間組成,其數(shù)據(jù)結(jié)構(gòu)可表示如下:
其中,N為軋制單元個(gè)數(shù),Mi為軋制單元i中鋼坯的個(gè)數(shù),第一段數(shù)組中FurnaceNo(1×N)是通過(guò)隨機(jī)數(shù)為各軋制單元指派加工的生產(chǎn)線編號(hào);第二段數(shù)組中BilletStartHeat(1×N×Mi)是鋼坯開(kāi)始加熱時(shí)間,第三段數(shù)組中BilletStartRoll(1×N×Mi)是鋼坯開(kāi)始軋制時(shí)間。如個(gè)體[1,2;[0,2,4],[4,6,8];[120,122,124],[124,126,128]]。該個(gè)體表達(dá)了兩個(gè)軋制單元被分派到兩條生產(chǎn)線加工,每個(gè)軋制單元中包含三塊鋼坯。
采用輪盤賭方式進(jìn)行選擇操作,采用多點(diǎn)復(fù)合交叉方式進(jìn)行交叉操作,采用均勻變異方式進(jìn)行變異操作。
適應(yīng)度函數(shù)采用本文所求目標(biāo)函數(shù)。停止準(zhǔn)則采用給定種群的最大迭代次數(shù)。
3.4.1 沖突檢測(cè)
首先定義加熱爐剩余資源能力函數(shù)R(k,t):
R(k,t)表示t時(shí)刻加熱爐k的剩余資源能力,若R(k,t)<0,則表示t時(shí)刻加熱爐k的資源負(fù)荷量超過(guò)爐容,違背爐容約束式(15),存在資源沖突。
若初始調(diào)度方案中,軋制單元i中的鋼坯l被指派到加熱爐k上加工,且入爐時(shí)間為說(shuō)明鋼坯l的加工時(shí)間違背加熱爐的容量約束,則鋼坯l為沖突鋼坯。
3.4.2 修復(fù)方法
為消解沖突,需為沖突鋼坯重新指定開(kāi)始加熱時(shí)間。定義lk∈{1,2,…,Nk},lk和Nk分別表示在生產(chǎn)線k上加熱爐加工的鋼坯索引及鋼坯總數(shù),鋼坯lk在初始調(diào)度方案中給定的入爐時(shí)間和出爐時(shí)間分別為鋼坯lk經(jīng)調(diào)整后入爐時(shí)間和出爐時(shí)間分別為為生產(chǎn)線k上加熱爐的最早可用時(shí)間。
Step2:約束檢查。
下面介紹改進(jìn)NSGA-II算法求解步驟。其中:iter表示算法的迭代次數(shù),maxIter是算法最大迭代次數(shù),Pop表示種群,sonPop表示子代種群,popSize表示種群規(guī)模,Pc表示交叉概率,Pm表示變異概率。
Step1:隨機(jī)生成初始不完全解,執(zhí)行沖突檢測(cè)-修復(fù)模塊獲得初始種群Pop。
Step2:初始化參數(shù),包括種群規(guī)模popSize、最大進(jìn)化代數(shù)maxIter、交叉概率Pc、變異概率Pm、當(dāng)前進(jìn)化代數(shù)iter=1。
Step3:判斷是否已經(jīng)生成第一代子群,如果iter=1,轉(zhuǎn)Step4,否則轉(zhuǎn)Step5。
Step4:對(duì)父代種群進(jìn)行非支配排序,再執(zhí)行選擇、交叉、變異操作,最后執(zhí)行沖突檢測(cè)-修復(fù)模塊,獲得子代種群sonPop,更新進(jìn)化代數(shù)iter=iter+1。返回Step3。
Step5:將父代種群Pop和子代種群sonPop合并,對(duì)合并后的種群進(jìn)行快速非支配排序,再計(jì)算擁擠度距離,最后選出popSize個(gè)個(gè)體組成新的父代種群Pop。
Step6:對(duì)新的父代種群進(jìn)行選擇、交叉、變異操作,再執(zhí)行沖突檢測(cè)-修復(fù)模塊,獲得新的子代種群。
Step7:判斷迭代終止條件,如果iter>maxIter,則算法終止,否則更新進(jìn)化代數(shù)iter=iter+1,返回Step3。
采用某鋼廠生產(chǎn)數(shù)據(jù)進(jìn)行仿真實(shí)驗(yàn),其生產(chǎn)配置為2臺(tái)軋機(jī)對(duì)應(yīng)2臺(tái)加熱爐。根據(jù)歷史數(shù)據(jù)和專家經(jīng)驗(yàn)設(shè)置加熱爐到軋機(jī)運(yùn)輸時(shí)間為20s、軋機(jī)換輥時(shí)間為60min,加熱爐最小入爐時(shí)間間隔為10s,軋機(jī)最大待機(jī)時(shí)長(zhǎng)為10min、加熱爐容量為(12,14)。根據(jù)問(wèn)題規(guī)模設(shè)置算法種群規(guī)模為100,最大迭代次數(shù)為100,交叉概率0.7,變異概率為0.1。
選取一組樣本數(shù)據(jù)進(jìn)行實(shí)驗(yàn)。如表1所示是樣本數(shù)據(jù)的基礎(chǔ)信息,包括軋制單元編號(hào)、鋼坯的額定加熱時(shí)間、鋼坯的軋制時(shí)間、軋制單元中鋼坯數(shù)量等信息。經(jīng)過(guò)算法求解得到調(diào)度方案的甘特圖,如圖2所示。從圖中可以發(fā)現(xiàn)兩條產(chǎn)線的產(chǎn)能負(fù)荷分配均勻,軋機(jī)出現(xiàn)待機(jī)的情況較少。
圖2 加熱爐-熱軋集成調(diào)度甘特圖
表1 相關(guān)的實(shí)際生產(chǎn)數(shù)據(jù)
加熱爐-熱軋集成調(diào)度是一類復(fù)雜的組合優(yōu)化問(wèn)題。本文考慮實(shí)際生產(chǎn)中存在的加熱爐容量限制約束,分析了國(guó)內(nèi)某鋼廠熱軋生產(chǎn)線的特點(diǎn),以鋼坯為調(diào)度對(duì)象,以提高生產(chǎn)效率和設(shè)備利用率、降低能耗為目的,建立了加熱爐-熱軋集成調(diào)度的多目標(biāo)模型。針對(duì)問(wèn)題特點(diǎn)設(shè)計(jì)改進(jìn)NSGA-II算法,通過(guò)引入沖突檢測(cè)-修復(fù)模塊保證解可行。結(jié)果表明,本文所提出的調(diào)度方法符合生產(chǎn)實(shí)際,能夠有效降低加熱爐能耗,提高軋機(jī)利用率。對(duì)降低鋼鐵企業(yè)的生產(chǎn)成本、提高生產(chǎn)效率、均衡生產(chǎn)負(fù)荷具有顯著意義。