王 君
天津財經大學管理科學與工程學院,天津,300222
經濟與社會的持續發展帶來能源消耗的快速增長,與此伴隨的CO2排放是全球氣候變化的重要因素。工業生產的能源消耗達到全球總能源消耗的一半[1]。在大多數生產企業中,電力是消耗能源的主要形式[2]。電力不能被有效存儲,只能隨著用戶的需要而進行實時的生產、運輸和供應,因此,需求反應技術和負荷管理對電力供需的平衡十分重要,分時電價(time-of-use electricity tariffs,TOU)政策就是一種最常用的策略[3]。它通過價格機制,鼓勵電力需求敏感的消費者把電力使用從需求的波峰時段移動到波谷時段,從而有效提高電網系統的穩定性和效率。
TOU政策下,制定生產計劃需要考慮訂單(或機器、工序)的功率消耗,盡量把高功率的訂單放在低電價下進行生產,以達到節省電力成本的目的。FANG等[4]以最小化電力成本為目標,研究了單機器生產環境下的搶占式和非搶占式機器調度問題,證明了問題的復雜度并給出了精確的或近似最優的求解算法。CHE等[5]對類似的單機器非搶占式機器調度問題,設計了一個貪婪插入算法。WANG等[6]針對生產批次的調度問題,在最小化電力總成本的同時,增加了總完工時間目標,給出了一個得到精確Pareto前沿的算法。DING等[7]以同樣的兩個優化目標研究了平行機生產系統的機器調度問題,給出了求解多目標問題的啟發式算法。
生產系統有效利用電力、保持電網穩定性是實現節能減排的方式之一。對工業企業而言,另一個節能減排方式是在配送系統中節約燃油。UBEDA等[8]在配送系統的案例研究中指出,僅通過減少總行駛里程就能比初始的配送方案減少25.5%的燃油消耗。城市配送中,道路網絡的擁堵程度類似于分時電價,選擇較通暢的時段進行配送有利于減少油耗[9]。因此,企業有效整合生產和配送系統,有利于同時節約電力和燃油總成本,以實現可持續調度[10]。對生產和配送同時進行決策的問題稱為供應鏈調度問題[11],這明顯增加了問題的復雜程度,但目前的研究都沒有考慮分時電價和路網的擁堵[12-13]。
本文針對單機器、單客戶的供應鏈調度問題,考慮在分時電價政策和路網擁堵的條件下,對工件的開始生產時刻、配送的批次和開始配送時刻進行決策。以最小化生產電力成本與配送油耗成本之和為目標建立模型,然后分析模型的優化性質。基于模型的最優性質,把集成的模型分解為多個批次的機器調度子問題。對于子問題的優化,設計了一個子集劃分的啟發式算法;對于主問題的優化,設計了自適應變鄰域搜索算法。數值計算表明,供應鏈調度模型和算法比先優化生產調度、后優化分批配送的分階段優化方法,可節約更多的電力和油耗成本。

分時電價指每個時段的電力價格隨著電力需求的不同而變化。把加工周期劃分成m1個時間段,第k(k=1,2,…,m1)個時間段記為Tk,該時間段的結束時刻記為ek。那么Tk可以表示為時間區間[ek-1,ek],Tk內的單位電價為ck。假設任意一個工件的加工時間都小于Tk。分時電價下,不同時間段安排工件的加工所耗費的電力成本是不同的,因此生產決策包括工件的加工順序和每個工件的開始加工時刻。
時變行程時間(time-dependent travel times,TDTT)可描述路網的擁堵。車輛行駛在某個配送路段的行駛速度依賴于路網的通暢程度。把配送周期分成m2個時間段,第η(η=1,2,…,m2)個時間段pη的結束時刻記為lη,同樣可以用區間[lη-1,lη]表示pη。假設在任意完整時間段內都可以完成配送任務,即車輛在配送時最多橫跨2個時間段。根據ICHOUA等[14]的TDTT模型,在pη內,車輛的行駛速度為sη。該模型把行駛速度表示為時間的分段函數,使得模型具有先進先出(first in first out,FIFO)性質,即先出發的車輛一定比后出發的車輛先到達目的地。路網擁堵條件下,在不同的加工完成時刻安排配送分批,每個配送車輛對應的載重、行駛速度是不同的,所以其耗費的燃油成本也是不同的。因此,在生產決策已知的情況下,配送決策即為確定配送的批次。

(1)

(2)
其中,yiv是0-1決策變量,如果工件i由第v個批次進行配送,則yiv=1;否則,yiv=0。

(3)
αη=γ0+γ1sη
(4)
(5)
式中,D為工廠到客戶的行駛路線長度;αη、βv為油耗系數;γ0、γ1為與速度相關的參數,γ0≥0,γ1≥0;μ為長期統計的車輛載貨量;λ0、λ1為與載重相關的參數,λ0≥0,λ1≥0。
顯然,在其他條件不變的前提下,隨著速度的增大,αη增大,油耗減小;隨著載重量的增大,βv減小,耗油增大。
記h為燃油價格;Csum為加工和配送所有工件的總成本;M為無窮大的數;xij為0-1決策變量,即如果工件i在工件j之前進行加工,并且在工件i與工件j之間無其他工件,則xij=1;否則,xij=0。考慮其他約束,該問題的混合整數規劃模型如下:
(6)
s.t.
(7)
(8)
(9)
(10)
(11)
(12)
xij+yiv≤1+yjv+yj,v+1
(13)
xij∈{0,1}
(14)
yiv∈{0,1}
(15)
zi≥0
(16)
模型中,式(6)表示優化目標是最小化加工和配送的總成本;式(7)表示機器加工第一個工件的順序約束;式(8)、式(9)表示機器加工其他工件的順序約束;式(10)表示每個工件必須包含在一個配送批次中;式(11)表示每個批次的配送量不能超過車輛的載重能力;式(12)表示前一個工件完成加工后,才能開始加工下一個工件;式(13)表示相鄰加工的后一個工件,要么與前一個工件一個批次配送,要么在下一個批次進行配送;式(14)、式(15)是0-1變量約束;式(16)是非負變量約束。
分析模型及解的性質有利于構造高效的優化機制,減小搜索空間,提高算法的效率。該優化問題包含生產調度和分批配送兩個有先后順序的決策子問題,首先對這兩個子問題進行求解分析。
定義1如果工件的開始加工時刻和加工完成時刻都包含在時間段Tk內,那么稱該工件在Tk內完全加工;如果工件的開始加工時刻在Tk內,加工完成時刻在Tk+1內,則稱該工件橫跨時間段Tk和Tk+1,并稱該工件在Tk和Tk+1部分加工[5]。
定義2如果工件i的加工完成時刻等于工件j的開始加工時刻,那么稱工件i和j是緊密相鄰的,并稱工件i是j的緊前工件,工件j是i的緊后工件。
定義3如果在加工序列(i1,i2,…,is)中,任意相鄰的兩個工件都是緊密相鄰的,且i1無緊前工件,is無緊后工件,則稱該加工序列為緊序列,工件個數s(s≤n)稱為該緊序列的長度。如果緊序列(i1,i2,…,is)中的某個工件is′橫跨時間段Tk和Tk+1,則稱(i1,i2,…,is′)和(is′,is′+1,…,is)分別是在Tk和Tk+1內的緊序列。
定義5如果模型的最優解唯一,那么稱該最優解為最優決策方案;如果最優解不唯一,那么稱含有緊序列數量最少的解為最優決策方案。
引理1加工某個工件的電力成本僅取決于各個時間段加工該工件的時間消耗[5]。
引理2若某個工件在一個時間段內加工完成,則加工該工件的電力成本與開始加工時刻無關[5]。
定理1如果模型存在最優解,那么最優決策方案存在以下性質:
性質1在時間段Tk內的某個緊序列中,任意交換同一配送批次、完全加工工件的次序,模型的最優值保持不變。
性質2在時間段Tk內,完全加工的非關鍵工件與同一批次的關鍵工件必定組成一個緊序列。
性質3如果一個同批次配送的加工序列(i1,i2,…,is)是緊序列的一部分,序列中某個工件is′橫跨時間段Tk和Tk+1。若ck
位于一六多金屬礦田南部、天門坳—牛公錐西主干斷裂中段西側、梅子沖銀鉛鋅礦床南約4km處(圖1)。赤老頂銻礦歷史悠久,于清末始被發現和開采,礦體主要呈似層狀、透鏡狀賦存于天子嶺組內的硅化層或硅化斷裂破碎帶中,主礦體賦礦標高為409~134m,目前最深開采標高至+170m左右。斷裂發育,具有近SN、NNE、NNW、NW、近EW及NE向等多組斷裂,其中近SN向、NNE向、NNW向組與礦化關系較密切。圍巖蝕變主要為硅化、方解石化。區內未見巖體出露。
性質4如果一個同批次配送的加工序列是緊序列的一部分,序列中的工件is′橫跨時間段Tk和Tk+1。若ck
根據引理1和引理2容易得到定理1中的性質1和性質2。圖1給出了性質2的示例。在a行中,5個工件在時間段Tk內完全加工,分2個批次進行配送,根據引理2,往后推移工件1和2的開始加工時刻使工件1、2、3緊密相鄰,往后推移工件4的開始加工時刻使工件4、5緊密相鄰,得到2個緊序列,如b行所示。由于關鍵工件3和5未移動,所以加工和配送這5個工件的總成本不變。在c行中,6個工件組成了1個緊序列,含有2個關鍵工件,示意了1個緊序列由多個配送批次組成。

圖1 性質2的緊序列示意圖Fig.1 A compact sequence diagram of property 2
從以上分析可以看出,在不改變成本的前提下,時間段Tk內,完全加工的非關鍵工件的開始加工時刻具有一定的靈活性。如果可以,把它們的開始加工時刻在Tk內往后(即時間軸方向)推移,直到與所在批次的關鍵工件組成緊序列;否則,就把它們的開始加工時刻在Tk內往前(即時間軸相反方向)推移,直到與前1個批次的關鍵工件組成緊序列。
以上分析的目的是為了在多個最優解中,選出最優決策方案作為優化的最終結果。最優決策方案相比于其他最優解,含有最少的緊序列,所以機器的加工間歇期最少,從而盡量減少機器在加工和間歇狀態之間的轉換,這符合現實企業的操作實踐。
性質3由反證法容易證明,由性質1和性質3易得到性質4。根據以上分析可知,在最優決策方案中,序列內工件的次序不唯一。為了在研究中得到最優決策方案的唯一解,對某同批次配送的加工序列(i1,i2,…,is)進行分析,如果它是緊序列的一部分,不失一般性,本文約定:①如果該序列在時間段Tk內,那么序列內工件按照加工功率升序排列;②如果該序列中的工件is′橫跨時間段Tk和Tk+1,那么序列內工件在ck>ck+1時,按加工功率升序排列;在ck 由于FANG等[4]已經證明分時電價下的機器調度問題是NP-Hard問題,所以本文研究的供應鏈調度問題也是NP-Hard問題。因為基于鄰域搜索的算法在處理生產、配送分批調度問題中具有很好的優化效果[15-17],所以本文采用文獻[18]提出的自適應變鄰域搜索(adaptive variable neighborhood search,AVNS)算法的框架進行求解。 采用基于配送批次和開始配送時刻的向量組編碼結構,用第v個向量表示車輛v配送的工件,最后一個向量表示每個批次的開始配送時刻。例如,向量組((2,5),(3,7,9),(1,4,6,8),(100,180,360))表示9個工件、3個批次的調度方案,具體加工配送調度計劃如圖2所示。機器加工完工件2、5后,在時刻100配送第1批工件;加工完工件3、7、9后,在時刻180配送第2批工件;最后加工工件1、4、6、8并配送它們。該編碼結構下,每個批次工件的加工順序可以是任意的,但要求每個批次最后一個工件的加工完成時刻等于該批次的開始配送時刻。為了得到每個批次的工件加工次序和工件的開始加工時刻,需要對向量組解碼以獲得模型的解。通過定義6和算法1,可以對向量組的每個分批進行解碼。 圖2 向量組表示的調度計劃示意圖Fig.2 The diagram of a scheduling plan expressed by a vector group 定義6根據向量組編碼結構,對于某個分批,在已知機器準備就緒時刻、加工完成時刻的條件下,確定該批次每個工件的開始加工時刻,以最小化該批次生產電力成本為目標的優化問題稱為分時電價下加工完成時刻已知的機器調度問題(子問題1)。 算法1機器調度算法 (2)對工件按照加工功率降序排序得到排列i1、i2、…、is。 (3)Forl=1 tosdo ②把工件il的加工完成時刻設置成時間軸的結束時刻,更新Is′和Is′-1。 ③Forl′=1 tosandl′≠ldo b.選擇電力成本增量最小的時間段、插入方式,插入工件il′。 c.Fork=1 tos′ do更新Ik。 ④計算該批次工件的加工電力成本f(il)。 (4)選擇最小的f(il)對應的方案。 (5)Forl′=1 to s andl′≠ldo依據性質2、性質4和最優決策方案唯一解的約定,計算工件l′的開始加工時刻,算法結束。 定理2如果電價是按照批次內時間段升序或降序排列,那么用算法1可以計算得到子問題1的最優解;否則,可以得到子問題1的近似最優解。 證明:顯然步驟②是把問題的解集劃分為s個子集,在每個子集中,安排工件il為最后一個加工工件,對其他工件的加工調度轉化為一個分時電價下的非搶占式機器調度問題(子問題2)。 對子問題2,算法1的步驟(1)(2)和步驟②~④組成的算法與貪婪插入啟發式算法[5]一致。因為CHE等[5]通過實驗驗證了算法的近似最優性,而且步驟(5)不改變工件在每個時間段的加工時間,即加工成本不變。因此,通過步驟(4)(5)可以求得所有子集近似最優解的最小值(子問題1的近似最優解)。 為了得到可行的調度方案,采用算法1的部分步驟得到加工計劃,然后進行批次分配,具體步驟如算法2所示。 算法2初始解生成算法 (1)依次執行算法1的步驟(1)(2)和步驟②~④、步驟(5),得到加工計劃序列(i1,i2,…,in)。 (2)初始化l:=1,v:=1,Load:=0。 (3)Whilel≤ndo ②置l:=l+1。 (4)利用算法1優化每個批次的機器調度問題。 在每個批次包含的工件和批次的開始配送時刻已知的條件下,根據機器調度算法,能得到供應鏈調度問題的最優解或近似最優解。因此,對供應鏈調度問題的全局優化,就簡化為對開始配送時刻的搜索和對批次分配的搜索,這是鄰域結構設計的出發點。 定義7對某個工件的開始配送時刻附近進行搜索的鄰域,稱為開始配送時刻鄰域。 假設配送批次v最后一個加工的工件為工件i,工件i所在的緊路徑中任意的一個工件為工件j,即j∈Jj,其中,Jj為工件j所在緊路徑中所有工件的集合,那么有 算法3開始配送時刻鄰域 (1)隨機選擇配送批次v,得到該批次最后一個加工的工件i,假設包含該批次的緊序列包含的批次為v-s、v-s+1、…、v+s′-1、v+s′(s,s′≥0)。 (2)在時間軸方向或時間軸相反方向中隨機選擇一個搜索方向。 (5)利用算法1優化每個批次的機器調度問題。 定義8把一個批次中的某個工件移動到另一個批次稱為批次移動鄰域。交換2個批次中的某個工件稱為批次交換鄰域。批次移動鄰域和批次交換鄰域統稱為批次鄰域。 記鄰域u(u=1,2,…,U)的選擇概率為ρu,鄰域u的有效、無效的次數分別為ρ1,u和ρ2,u。令有效率ρ3,u=ρ1,u/(ρ1,u+ρ2,u)+0.02,那么[18] (17) 根據以上自適應選擇機制,結合4.1、4.2節的內容,得到如下AVNS算法的總流程: (1)初始化批次移動和批次交換的有效次數ρ1,1=ρ2,1=5、無效次數ρ1,2=ρ2,2=5。利用算法2生成初始解X,并設置X為當前解和最優解。初始化φ:=0。 (2)Whileφ<φmax ①根據兩個批次鄰域的選擇概率,使用輪盤法隨機選擇一個鄰域u。 ②Forθ=1 toθmaxdo a.使用鄰域u對當前解進行鄰域操作,得到解X′。 b.使用算法3的開始配送時刻鄰域對X′進行局部搜索,得到的最好解記為X″。 c.如果X″優于當前解,則置ρ1,u:=ρ1,u+1;否則置ρ2,u:=ρ2,u+1。 d.置X″為當前解,φ:=φ+1。如果X″優于最優解,則置X″為最優解,φ:=0。 ③使用式(17)更新鄰域的選擇概率。 隨機生成參數不同的18個算例,來驗證模型的正確性、算法的效率以及對問題規模的敏感程度。算法用Visual C# 2010編程,在Intel i7-6700 3.4 GHz的CPU、8GB內存、Windows7系統的電腦上運行。設置工件數量為20、40,隨機生成工件的相關參數,各參數的取值范圍如表1所示。為了在加工周期內完成所有工件的加工任務,隨著工件的增加,每個工件的平均加工時間縮短。工件的加工功率設置為高功率、低功率、高低功率混合三種類型,工件質量也有類似設置。設置車輛最大載重Qv=20 t,行駛路線長度D=100 km,油價6元每升,分時電價[5]和時變行程時間的設置如表2所示。與油耗相關的參數如下[9]:λ0=4.400 276 59,λ1=0.000 033 978 4,γ0=4.537 757 841 4,γ1=0.065 805,μ=15 173.04 kg。參考文獻[15,17-18]對算法參數的設置,令θmax=3,4,…,9;φmax=10,20,30,40,并選取幾個算例進行試優化。我們發現θmax的取值對算法優化結果的影響不大,較大的φmax會增加算法的運算時間,因此,經過反復試驗后設置算法參數:θmax=5,φmax=20。 表1 工件參數 表2 分時電價和時變行程時間參數 如表3所示,算法的計算結果分為兩部分:一部分是運用本文提出的供應鏈調度優化模型和AVNS算法得到的計算結果;另一部分是把加工調度和批次配送調度分成兩個階段先后優化,即先采用文獻[5]的方法優化加工調度,然后在加工計劃給定的條件下優化分批得到的計算結果。優化分批采用本文提出的ANVS算法框架和相同的參數設置,其算法中鄰域結構的設置如下:①將某個批次的第一個工件移動到前一個批次;②將某個批次的最后一個工件移動到后一個批次。表3中,加粗字體顯示較好的結果。從計算時間上看,作為對比的分階段優化算法用時很少,這是因為文獻[5]采用的是貪婪插入算法,缺少全局搜索過程。從總成本的對比結果看,以供應鏈整體視角進行的優化比分階段優化減少4.85%~18.47%的成本。再分別對加工和配送的成本進行分析。供應鏈整體優化的配送成本都明顯小于分階段優化的成本。算例2a、2b、3a、6a、7a、7b的分階段優化的加工成本大于整體優化方式,這是因為在時間段較多并且電價不是按照時間段有序排列的情況下,用文獻[5]的算法優化加工調度僅能取得近似最優解。整體優化方式僅在批次內部進行加工調度的優化,而每個批次的時間區間包含的時間段要少很多,那么配送成本就進一步接近甚至等于最優解。因此,本文提出的供應鏈整體視角的優化模型和AVNS算法在優化加工和配送總成本方面具有很好的效果。 表3 算例計算結果 由表3可知,當工件較少(20個工件)時,AVNS算法在30 s內就能取得最終結果。當工件數量增加到40時,運算時間明顯延長。這是因為運算時間主要取決于鄰域的搜索范圍和算法的迭代次數。批次較多或配送成本明顯大于加工成本,會增加鄰域范圍和搜索的深度。算例8b同時滿足以上兩個條件,其運算時間最長,但也沒有超過10 min,其運算過程見圖3。在前50次迭代中,總成本目標的下降速度較快,下降到4 196.52 元,已經優化了97.64%,說明AVNS算法在運算過程的前期具有較好的優化效果。在運算后期,當前解在最優解上方隨機波動,說明AVNS算法的隨機搜索性能較理想。 圖3 算例8的迭代過程Fig.3 Iterative process of example 8 (1)在分時電價政策和時變行程時間下,研究了單機器的集成生產計劃和配送分批的供應鏈調度問題,對每個工件的開始加工時刻、配送的分批進行決策,目標是優化總成本。 (2)建立了混合整數規劃模型,分析了模型的最優化性質,設計了自適應變鄰域搜索算法進行求解。數值計算的實驗表明,供應鏈集成調度模型比分階段先后獨立優化具有很大的優勢。 (3)對單機器、單個客戶的供應鏈調度問題進行了研究。由于企業的生產系統、配送系統具有多樣性,考慮多機器、多客戶、車輛路徑規劃等條件下的供應鏈調度問題,是下一步研究的方向。4 模型的求解算法
4.1 解的編碼結構及解碼





4.2 初始解

4.3 鄰域結構







4.4 AVNS算法總流程
5 數值計算分析




6 結論