都 東,田 堯,王 戈
(1.中國人民解放軍78092部隊,四川 成都 610031;2.中國人民解放軍31432部隊,遼寧 沈陽 110021)
信息化條件下,后勤保障范圍大、保障距離遠、保障時間短、保障對象多變[1],傳統(tǒng)儲備模式通常以大規(guī)模、全局性的補充需求為保障目標,存儲設(shè)施主要分布在縱深地區(qū),以成建制、標準化為基本儲備方式,靈敏性差、反應(yīng)性劣、機動性弱,難以滿足現(xiàn)代軍隊快速及時、精準高效、體系配套的保障需求。多級儲備模式是在傳統(tǒng)儲備的基礎(chǔ)上,加入預(yù)置預(yù)儲功能,以基本存儲點、預(yù)置預(yù)儲點為核心共同構(gòu)成多級儲備體系,該體系具有綜合配套程度高、針對有效性強、機動靈活性好的特點,能夠高效保障戰(zhàn)斗區(qū)域、任務(wù)部隊的物資需求。
國內(nèi)外對于多級預(yù)儲模式的定量化分析和模型化表述較少,多以基礎(chǔ)理論和對策建議為主,如文獻[2-5]均從戰(zhàn)備物資預(yù)置預(yù)儲體系的主要構(gòu)成、基本布局、長遠構(gòu)想和建設(shè)規(guī)劃等角度進行定性分析。同時,對于改進粒子群算法計算模型的研究,通常適用于保障結(jié)構(gòu)簡單、變量條件少、約束條件少的物資配送模型,如文獻[6-8],但對于構(gòu)成要素較多、層級結(jié)構(gòu)復(fù)雜、保障類型多樣的多級預(yù)儲物資配送情況不能有效應(yīng)用。
針對上述研究不足,本文基于預(yù)儲保障、基本補充和預(yù)置補充等多級預(yù)儲物資保障方式,采用混合整數(shù)規(guī)劃模型定量描述物資配送過程,運用速度更新、位置變異等策略改進粒子群算法,通過設(shè)計編碼、約束處理與適應(yīng)度函數(shù)等有效求解混合整數(shù)規(guī)劃模型,進而優(yōu)化多級儲備物資配送方案。
多級儲備物資保障體系主要由基本儲存點、預(yù)置預(yù)儲點、前方需求點、運載方式、輸送線路、物資等要素構(gòu)成?;緝Υ纥c作為后方區(qū)域主要的存儲設(shè)施,日常儲備大量戰(zhàn)備物資,保證了物資保障的持續(xù)性和穩(wěn)定性,但距離前方需求點較遠,物資保障及時性和靈敏性不足;預(yù)置預(yù)儲點距離前方需求點較近,保障距離近、保障時間短,可滿足前方需求點的早期物資需求,但儲存空間有限、儲備費用較高,在沒有基本儲存點的持續(xù)補充下無法單獨支撐前方需求點的長期物資需要;前方需求點一般分布于前方區(qū)域多個點位,物資需求呈現(xiàn)品種類型多、規(guī)模變化大、數(shù)量動態(tài)性強等特點。
多級儲備模式下主要存在3種物資保障類型:1)預(yù)儲保障,基本儲存點向預(yù)置預(yù)儲點轉(zhuǎn)運物資,提升保障體系的及時配送能力;2)基本補充,在時間允許下,基本儲存點直接向前方需求點投送物資滿足其物資需求;3)預(yù)置補充,時限性要求較高時,預(yù)置預(yù)儲點立即向前方需求點配送物資。具體如圖1所示。
圖1 多級儲備模式下的物資配送關(guān)系
模型假設(shè):1)基本儲存點、預(yù)置預(yù)儲點和前方需求點的位置是已知的,前方需求點的物資需求量信息已知;2)3類節(jié)點之間的物資配送距離和配送時間是已知的,在同一時間向前方配送物資,不存在時間差;3)由于物資的數(shù)量和重量可以相互轉(zhuǎn)換,模型中只考慮物資數(shù)量;4)單個前方需求點的單品種物資只能由1個基本儲存點或預(yù)置預(yù)儲點保障,即對于前方需求點的單品種物資需求只存在“一對一”保障關(guān)系,不存在單品種物資下“一對多”或“多對一”保障關(guān)系,同理于預(yù)置預(yù)儲點保障前方需求點的情況。
構(gòu)建混合整數(shù)規(guī)劃模型:
(1)
min max(ai,jBXi,j,m,bi,kBYi,k,m+gj,kBZj,k,m)
?i∈I,j∈J,k∈K,m∈M
(2)
(3)
(4)
(5)
(6)
(7)
(8)
Xi,j,m,Yi,k,m,Zj,k,m,Si,m,Uj,m?NBXi,j,m,
BYi,k,m,BZj,k,m?{0,1}
(9)
模型中符號說明如表1所示。
表1 符號說明
目標函數(shù)(1)最小化多級儲備物資配送所產(chǎn)生的費用,包括基本存儲點的存儲費用、預(yù)置預(yù)儲點的預(yù)儲費用、預(yù)儲保障費用、基本補充費用和預(yù)置補充費用5類費用。目標函數(shù)(2)最小化最長物資配送時間,最長物資配送時間主要在基本儲存點通過中轉(zhuǎn)預(yù)置預(yù)儲點補充前方需求點、直接通過基本補充的方式這兩種補充方式中產(chǎn)生。約束函數(shù)(3)限定前方需求點的單品種物資需求至多由1個基本儲存點或1個預(yù)置預(yù)儲點補充滿足,形成“一對一”保障關(guān)系。約束函數(shù)(4)限定每個預(yù)置預(yù)儲點至多由1個基本儲存點轉(zhuǎn)運配送。約束函數(shù)(5)要求基本儲存點的基本補充物資量和預(yù)置預(yù)儲點的預(yù)置補充量要達到前方需求點的物資需求量,保證需求點的需求得到有效滿足。約束函數(shù)(6)要求預(yù)置預(yù)儲點向外的物資配送量等于基本儲存點向預(yù)置預(yù)儲點的物資配送量。約束函數(shù)(7)表示基本儲存點的物資儲備量等于其向預(yù)置預(yù)儲點和前方需求點的物資配送量。約束函數(shù)(8)表示預(yù)置預(yù)儲點的物資儲備量等于其向前方需求點的物資配送量。約束函數(shù)(9)對各變量的取值范圍做出限定,要求必須為自然數(shù)或0、1整數(shù)。
多級儲備物資配送方案優(yōu)化問題屬于NP hard問題,精準計算預(yù)儲保障、基本補充、預(yù)置補充3部分物資保障過程才能優(yōu)化出最佳的物資配送策略,精確求解的計算量會隨著問題規(guī)模增大而指數(shù)增長。
粒子群算法(Particle Swarm Optimization,PSO)是一種群智能優(yōu)化算法,局限性主要有3點:1)局部搜索能力較差,搜索精度不夠高;2)算法不能絕對保證搜索到全局最優(yōu)解,在處理高維復(fù)雜問題時,算法可能會早熟收斂,粒子群在沒有找到全局最優(yōu)信息之前就陷入停頓狀態(tài),這些早熟點既可能是局部最優(yōu)點,也可能是位于局部最優(yōu)點鄰域內(nèi)的其他點;3)算法搜索性能對參數(shù)具有一定的依賴性,參數(shù)值的大小直接影響到算法是否收斂以及求解結(jié)果的精度。針對上述傳統(tǒng)粒子群算法的局限性,可從以下幾方面加以改進。
傳統(tǒng)粒子群算法通常采用隨機化產(chǎn)生初始粒子,這種方式使得初始粒子群在解空間的分布均勻度不佳,不利于最終的收斂精度。引入基于Logistic混沌映射的方法,利用其遍歷性和非周期性,初始化粒子種群,使得其均勻分布于解空間。相較于隨機化產(chǎn)生,Logistic混沌映射方法產(chǎn)生的粒子種群分布的均勻性和多樣性更佳,平均適應(yīng)度更高。Logistic混沌映射是一種產(chǎn)生混沌序列的非線性映射,可表示為
(10)
式中,Yids為第s次迭代粒子位置的混沌變量,其取值范圍為[0,1];μ為控制參數(shù),若μ為4,則系統(tǒng)處于完全混沌狀態(tài),且產(chǎn)生的混沌變量均屬于區(qū)間[0,1]。采用四舍五入的方式,對式(10)的混沌映射結(jié)果進行二值化修正處理,修正公式為
近年來,國產(chǎn)電梯品牌迅猛發(fā)展,以康力電梯、江南嘉捷、遠大智能、廣日電梯、東南電梯等民族品牌為代表的電梯企業(yè)不斷占據(jù)國內(nèi)市場份額,但是其綜合實力較國際知名電梯企業(yè)來說仍有相當大的差距,在制造和管理上的差距尤為明顯,導(dǎo)致生產(chǎn)成本過高,競爭力不足。由于電梯產(chǎn)品種類繁多、參數(shù)復(fù)雜,且用途獨特、安全性要求嚴格,隨著行業(yè)競爭的不斷加劇,電梯市場不斷走向多樣化及定制化的柔性制造模式,因此實行切合我國電梯制造企業(yè)的實際情況的精益生產(chǎn)方式,在企業(yè)研發(fā)、生產(chǎn)及管理上均具有重要意義。
(11)
式中,round()為取整函數(shù);Yids+1為修正后的粒子位置變量。
粒子群算法在進行速度更新時,通過學習因子使粒子具備自學習和社會學習的能力。固定的自學習因子和社會學習因子容易使迭代過程緩慢,易陷入局部最優(yōu)。為改善算法在不同迭代階段的學習能力,重新設(shè)計自學習和社會學習因子的變化公式,在算法迭代初期,使例子具有較強的自學習能力,以增強算法開發(fā)性能和全局尋優(yōu)能力;在算法迭代后期,增強例子的社會學習能力,提高算法開采能力。學習因子變化公式如式(12),式中ci1和ci2分別表示c1和c2的初始值,cf1和cf2表示c1和c2的終值。
c1=ci1+(cf1-ci1)/Ttc2=ci2+(cf2-ci2)/Tt
(12)
下一次迭代粒子id的速度Vids+1和慣性權(quán)重w按式(13)和(14)進行更新,其中wmax和wmin分別為慣性權(quán)重初始最大最小值,smax為最大迭代次數(shù)。
(13)
ws+1=wmax-(s+1)(wmax-wmin)/smax
(14)
根據(jù)下一次迭代粒子id的速度Vids+1可以計算下一次粒子位置,如式(15)所示,其中dt是仿真間隔,一般情況下可以取1,如果希望仿真速度更慢、搜索效果更平滑,可適當減小dt。
(15)
為了表示二進制位取1的概率,速度值被映射到區(qū)間[0,1]。將Sigmoid映射函數(shù)稍作改變,這里Si(V)表示粒子位置Xid取1的概率:
(16)
粒子i的位置Xid更新策略如公式(17)。當粒子的速度為0時,其位置不發(fā)生變化;粒子的速度為負時,其位置只能取0;粒子的速度為正時,其位置只能取1。通過這種位置更新策略,可以使粒子更加靠近局部最優(yōu)解。
(17)
使用改進的二進制粒子群算法對從經(jīng)濟性、時效性兩個方面對多級儲備物資配送方案進行優(yōu)化,關(guān)鍵在于將模型中的變量合理轉(zhuǎn)化為粒子表示。模型中主要是連續(xù)型變量,取值范圍為非負整數(shù),如預(yù)儲保障物資量X、基本補充物資量Y、預(yù)置補充物資量Z等,可以采用連續(xù)型編碼形式。設(shè)計一種連續(xù)編碼方案,如圖2所示,粒子編碼長度L=ijm+ikm+jkm。由于變量BX、BY、BZ由于可以根據(jù)變量X、Y、Z的取值情況進行判定,故為達到既節(jié)約計算空間又保持計算精度的編碼目的,不對X、Y、Z變量單獨編碼。
圖2 粒子編碼方式
處理約束條件通常使用懲罰函數(shù),其基本思想是通過懲罰違反約束的不可行解,使粒子群逐漸收斂于可行解空間。對約束函數(shù)式(3)—(5)轉(zhuǎn)化為無約束函數(shù)(18)—(21):
(18)
(19)
(20)
(21)
違反約束條件程度CN由式(21)給出,其中ki為較大的正數(shù),表示各約束條件的重要程度,一般取較目標函數(shù)值大三個數(shù)量級的正數(shù)。適應(yīng)度值是判斷粒子優(yōu)劣的重要標準,在設(shè)計適應(yīng)度函數(shù)時需要同時考慮違反約束條件的程度和目標函數(shù)值,用以描述不同粒子在違反約束條件時的差別。約束違反程度CN與第n維目標函數(shù)值fn共同構(gòu)成第n維目標適應(yīng)度函數(shù)Fn,如式(22)所示。與模型目標函數(shù)對應(yīng),適應(yīng)度值越小則粒子越優(yōu)。
Fn=fn+CNn=1,2
(22)
改進的粒子群算法流程如圖3所示。
圖3 改進的粒子群算法流程圖
以某部后勤保障演習為例,研究物資配送方案的優(yōu)化問題。該部計劃依托3個基本儲存點和6個預(yù)置預(yù)儲點,對15個前方需求點進行2類物資的配送補充,基本預(yù)儲點與預(yù)置預(yù)儲點、基本預(yù)儲點與前方需求點、預(yù)置預(yù)儲點與前方需求點配送距離分別在區(qū)間[40,100]、[90,170]、[10,45]中隨機生成,前方需求點的物資需求量服從正態(tài)分布N(60,52);基本儲存點和預(yù)置預(yù)儲點的儲備費用分別在區(qū)間[6,10]、[12,18]中隨機生成。
算法運行參數(shù)設(shè)定如下:粒子長度為307,速度最大值vmax為10、最小值vmin為2,學習因子c1和c2均為1.49,控制參數(shù)μ為3,迭代次數(shù)為500,種群粒子規(guī)模為100,變異概率為0.3。由于模型為雙目標函數(shù),每次迭代產(chǎn)生一組帕累托最優(yōu)(Pareto Optimality)解組合,根據(jù)粒子擁擠程度機制,將帕累托解組中排序第一的解作為分析對象,取其兩個目標值的平均值作為適應(yīng)度函數(shù)值,分析迭代次數(shù)與適應(yīng)度函數(shù)值的關(guān)系。隨著迭代次數(shù)不斷增加,適應(yīng)度函數(shù)值不斷減少而后趨于穩(wěn)定,說明算法在不斷優(yōu)化物資配送方案,最終得到一組優(yōu)化解,如圖4所示。
圖4 多級儲備物資配送方案的優(yōu)化迭代過程
計算得到了共計10組物資配送方案解,共同構(gòu)成一組最優(yōu)帕累托前沿面(Parento Front),最優(yōu)解分布如圖5所示,具體雙目標求解值如表2所示。圖5中每個“*”點代表1個求解物資配送方案,圖中求解的結(jié)果分布較為均勻,在經(jīng)濟成本和最大保障距離2個求解目標上互不構(gòu)成“占優(yōu)”關(guān)系,說明改進的粒子群算法取得了較好的求解效果。
圖5 Pareto最優(yōu)解分布圖
表2 Pareto最優(yōu)解對應(yīng)的目標值
對外部種群檔案進行排序并選取排序第1的物資配送方案進行分析,具體的配送關(guān)系和物資配送量如圖6所示,基本儲存點和預(yù)置預(yù)儲點的物資儲備量如圖7所示。在配送方案中,基本儲存點和預(yù)置預(yù)儲點合理分工、精確協(xié)同,共同為前方需求點保障戰(zhàn)備物資,其中基本儲存點物資儲備量較多,擔負著既向預(yù)置預(yù)儲點預(yù)儲保障物資,又直接向前方需求點基本補充物資的保障任務(wù),在儲存物資、配送保障等方面均起到了主要作用,但是機動性、靈活性較低;預(yù)置預(yù)儲點距離前方需求點更近,在需求點的物資保障時限性要求較高時能夠?qū)崿F(xiàn)快速精準保障,有效彌補基本儲存點配送機動性差、反應(yīng)速度慢的缺點。
圖6 多級儲備物資保障關(guān)系及配送量
圖7 基本儲存點和預(yù)置預(yù)儲點的物資儲備量
為進一步驗證改進粒子群算法的有效性,將其與一般粒子群算法仿真計算過程與結(jié)果進行比較。一般粒子群的參數(shù)設(shè)定與改進粒子群已知,設(shè)置速度最大值vmax為10、最小值vmin為2,學習因子c為1.49,迭代次數(shù)為500,種群粒子規(guī)模100,通過Matlab進行50次仿真計算,搜索得到最優(yōu)帕累托前沿面(Parento Front)的次數(shù)為4次,成功率為8%,而改進的粒子群算法搜索得到最優(yōu)帕累托前沿面的次數(shù)為37次,成功率為74%。兩種算法的適應(yīng)度函數(shù)值變化情況有所差異,如圖8所示。
圖8 一般粒子群算法與改進粒子群算法適應(yīng)度函數(shù)值變化比較
改進粒子群算法在迭代次數(shù)達到100次之后較為穩(wěn)定,適應(yīng)度函數(shù)值變化較為平穩(wěn)。一般粒子群算法的穩(wěn)定性不夠強,適應(yīng)度值會出現(xiàn)階躍跳變的情況,是因為構(gòu)建的物資配送方案優(yōu)化模型較為復(fù)雜,粒子編碼長度較長,計算得到的局部最優(yōu)解往往達不到約束函數(shù)要求而進行適應(yīng)度回調(diào)造成的。通過比較結(jié)果發(fā)現(xiàn),不論是在收斂速度、搜索精度還是計算穩(wěn)定性方面,改進的粒子群算法均優(yōu)于一般粒子群算法。
采用多級儲備模式,能夠形成快速及時、精準高效、體系配套的物資配送體系,滿足前方需求點多樣化的物資保障需求。分析多級儲備物資配送問題,運用定量方法至關(guān)重要。構(gòu)建混合整數(shù)規(guī)劃模型、改進粒子群算法進行研究,可以優(yōu)化多級儲備物資配送方案,相關(guān)優(yōu)化結(jié)果可供后保人員參考,能夠提高物資配送策略的科學性。后續(xù)可以研究物資需求變化、不固定物資保障關(guān)系、風險管理等更加復(fù)雜的問題。