李鳳月,齊小剛,班利明,李建華,索文凱
(1.西安電子科技大學 數學與統計學院,陜西 西安 710000;2.中國人民解放軍32272 部隊,甘肅 蘭州 730000)
裝備維修保障的物力資源是裝備維修保障活動順利開展的物質保證,其中備件的經費消耗占到裝備保障總經費的1/3 左右[1-2],因此,維修備件的庫存優化技術成為車輛裝備保障系統最為關注的保障領域之一,它是促進裝備保障效能和經濟效能相統一發展的有效技術手段[3]。目前較多的車輛裝備維修備件存在消耗規律難以掌握、庫存控制周期較長、維修備件被大量閑置、在庫車輛備件周轉率低等問題。傳統上為了達到很高的保障效能會存儲過多的維修備件,導致經費消耗很快。因此,如何合理地設置維修備件的庫存控制方案,發揮最大的經濟效益,保證規定的保障效能就顯得十分重要。
備件消耗預測常見的方法是歷史映射法[4-7],該類方法被廣泛應用于具有規律性的預測問題中,并對數據有較高的要求。對于車輛裝備而言,維修計劃往往和車輛裝備的摩托小時消耗量有著密切的關系。由于車輛摩托小時的收支平衡具有較長的周期性,且每個年度的動用計劃存在較大差異,這將直接影響到車輛的自然隨機故障率以及定時定程維修頻次。因此,單靠歷史數據映射法對車輛裝備備件進行預測準確度并不高,容易形成庫存積壓或缺貨嚴重等一系列不良的狀況[8]。最新的研究方向是借鑒企業供應鏈管理系統中的庫存控制方法,通過多品種項目聯合補貨[9-10]手段研究車輛裝備維修備件的庫存決策方案。多品種項目聯合補貨庫存控制模型的基本數學原理是EOQ (economic order quantity)系列模型。EOQ系列模型從庫存管理角度出發,適用于定期庫存檢查或連續庫存檢查方式的庫存系統,用于研究如何調整補貨間隔期和補貨批量可以使得維修備件滿足軍事需求,且庫存費用最小[11-12],如今,EOQ改進形式被廣泛應用于維修器材的供應系統。張建榮等[13]考慮了物資的保障度構建了多品種聯合補貨模型,所構建的模型可以在每個補貨時將物資訂購至最大庫存,與單品種庫存策略相比,經費節省效果顯著。Wang 等[14]提出了一種帶有環境檢測算子和兩種不同環境變化響應策略的改進粒子群算法,有效求解多品種聯合補貨數學模型。根據實際問題特點,Li 等[15]建立了一種帶有資源約束的軍用機消耗品聯合補貨數學模型,并提出了一種改進的自適應遺傳算法求解了該模型,所建模型具有較高的應用價值。Zeng 等[16]針對聯合補貨問題的數學特性,設計了一種有效的基于模擬退火的混合差分進化算法,實驗表明,該算法能夠魯棒、精確地解決這一不確定性多項式難題。
本文根據車輛的動用計劃,分析了車輛動用計劃期內預防性定時定程維修和修復性自然隨機故障維修下的備件消耗特點,以此建立了基于動用強度的車輛裝備備件消耗量模型和備件庫存控制模型,并設計了改進的果蠅優化算法對模型進行了求解。
備件消耗主要是由車輛動用計劃下裝備的維修維護產生的。動用計劃是通過運用現有的智能算法合理地分配用車任務,構造以重點用車、一般用車、控制用車為主的動用車使用計劃,以保持合適的摩托小時梯次儲備。在該梯次儲備下,年度進行維修的裝備數量穩定變化,盡量早地產生大、中修裝備,進入滾動式循環動用[17]。因此車輛裝備維修保障任務主要分為定時定程維修和自然隨機故障維修。
定時定程維修包括大修、中修、小修,由車輛動用強度決定。而動用強度與車輛的摩托小時有關,所以一般以車輛支出的摩托小時為依據判斷大、中、小修。大修、中修和小修需要按照一定的標準和要求,分別進行全面性的恢復修理、基本或部分恢復修理和一般性維護活動。每種維修都有一定的維修技術標準和工藝要求,以某型裝甲車為例,該裝甲車的大、中、小修的維修間隔期分別為900、450、150 摩托小時,每個大修間隔期內進行大、中、小修的次數比例為1∶1∶4,如圖1 所示。維修類別主要包括底盤、武器、火控系統、電氣設備及檢測儀表、三防裝置、指控通信設備等類別。一般大修之后,車輛裝備如新,達到收支平衡,摩托小時歸零。

圖1 維修間隔期示意Fig.1 Schematic diagram of maintenance intervals
修復性修理是指未使用到規定的修理間隔期限出現的損壞故障。這類故障往往與車輛的摩托小時消耗緊密相關,可通過車輛歷史故障數據信息和現有的一些預測模型,如神經網絡、ARMA模型、灰色預測模型等即可預測出基于車輛摩托小時故障率。一般而言,當前摩托小時支出量越多,發生隨機故障的概率越大。圖2 給出了規定維修間隔期的車輛裝備備件更換策略。

圖2 車輛裝備備件更換策略Fig.2 Vehicle equipment spare-part replacement strategy
綜上,維修任務下備件的消耗過程如圖3 所示。首先,制訂保障期內車輛裝備的動用計劃,動用計劃下的車輛裝備將產生對應的送修計劃,主要包括預防性維修和修復性維修。其中,預防性維修任務主要考慮車輛裝備的定時定程維修,修復性維修主要考慮自然隨機故障維修。然后,維修任務產生備件更換,包括備件預防性更換和故障性更換兩種情況,最后根據備件的相關數據,進行倉庫的庫存控制優化。

圖3 備件消耗過程Fig.3 Spare-part consumption process
上面分析了基于定時定程維修和自然隨機故障維修產生備件消耗的兩種情況。對歷史數據做回歸分析容易得出各類故障維修與備件消耗量的對應關系。這里假設已知車輛裝備的備件需求率,建立動用計劃期內的備件消耗量預測模型。這里所需的基本符號如表1 所示。

表1 基本符號Table 1 Basic symbol
1)定時定程維修備件消耗量
動用計劃下的定時定程維修類型完全按照摩托小時間隔劃分為小、中、大修,并假設大修之后車輛如新,摩托小時歸零。建立定時定程維修備件消耗模型,假設N臺同類型車輛在保障時間內產生的j類維修的次數為Zj[18]:

那么動用計劃下定時定程維修備件i預計消耗量為D′:

2)隨機故障維修備件消耗量
車輛的隨機備件消耗與車輛的故障規律、裝備技術狀況和使用條件等因素有著直接的關系,主要取決于車輛使用強度。本文根據當前摩托小時的消耗量來度量使用強度。車輛的自然隨機故障多為小修范圍,且產生小修的故障率較穩定。根據現有的一些方法[19-20]對歷史數據進行分析處理,可得到摩托小時分段故障率。大修之后車輛裝備如新,摩托小時歸零,所以只在一個大修周期內進行分段。
規定l為摩托小時分段的標識,按照每100摩托小時劃分一個大修周期,共分為L段,即L=+1=maxl。λl表示摩托小時段l的故障率。所以隨機自然故障維修臺次Hf可通過式(3)確定:

式中:βf為f類故障的占比;ΔMkl為第k臺車在每個摩托小時段l的預計摩托小時消耗量。所以自然隨機故障維修備件i消耗量計算如式(4):

3)動用計劃下備件消耗量模型
動用計劃下備件消耗量主要來自定時定程維修備件消耗量和隨機故障維修備件消耗量,所以備件i消耗量計算如式(5):

科學的備件庫存管理,可以在保證倉庫一定服務水平的同時,有效降低庫存成本。一般來說,庫存成本主要包括補貨成本和存儲成本。建立基于定期檢查策略庫存策略的聯合補貨策略庫存模型。備件中補貨周期最短的為基本補貨周期T,其他備件i的補貨周期均是該周期的ki倍,ki為大于零的整數。其他基本假設:1)訂購的提前期可忽略不計;2)缺貨成本無限大,即不允許缺貨;3)不考慮倉庫的容量限制。庫存控制模型如下:
在N種裝備備件中,第i種備件的訂購量Qi為

那么所有裝備備件的年平均存儲成本Ch為

式中hi表示備件i的單位存儲成本。同樣容易得出所有裝備備件的年平均補貨成本Cr為

式中:R表示主要補貨成本;ri表示備件i的額外補貨成本單位存儲成本。所以車輛裝備備件庫存控制年平均成本C為

式中K={k1,k2,···,kN}。
果蠅優化算法(fruit fly optimization algorithm,FOA) 是模擬果蠅覓食行為而提出的一種基于群體性搜索的隨機優化算法,現在已被廣泛應用在各領域的優化設計中。果蠅算法操作方便,簡單明了。但本文模型涉及的決策變量較多,果蠅在全局中飛行以尋找更優的個體進行迭代,在迭代后期會由于個體集聚度變大導致群體多樣性減少,因此果蠅到后期容易出現陷入局部最優解的問題[21-22]。研究發現多種群位置更新[23-24]和自適應進化策略[25-26]是提高智能算法搜索效率的有效方法。為了解決果蠅算法的這一問題,對果蠅優化算法進行了改進。引入麻雀搜索算法(sparrow search algorithm,SSA)中多類種群位置更新方式[27],提出改進的果蠅優化算法(improve the fruit fly optimization algorithm,IFOA)。
通過(?C/?T)=0求得關于K的最優基本周期T?:
對于給定的K,C是關于基本周期T的凸函數,

將式(10)代入式(9)可得關于K的最優成本函數:

可以看出,最優解關鍵是由 {k1,k2,···,ki,···,kN}值決定。這里采用改進的果蠅優化算法求解模型。為了減少搜索空間,對ki界限作以下設置。
ki為大于零的整數,所以顯然可以設置下限kLBi=1。另一方面,通過 (?C/?ki)=0 和基本不等式(12),易得出不等式(13):

所以ki上界kUBi滿足式(14):

實際問題備件種類數量較多,果蠅個體位置向量較長,傳統的氣味濃度判斷值Sy計算方法也將變得復雜,且存在求解空間分布不均勻的缺陷[28]。為了避免果蠅距離Disty的計算,使計(算簡單有)效,設置每個果蠅個體y的位置為對應著N個備件的周期乘子K。直接將果蠅的氣味濃度判定值設定為Sy=Xy。引入SSA 多類種群位置更新方式如下:
1)果蠅“發現者”位置更新方式
設置果蠅“發現者”,進行大方向范圍搜索,是一種多樣性保存策略。

式中飛行方向 FR1由初始搜索飛行范圍決定。
2)果蠅“跟隨者”位置更新方式
設置果蠅“跟隨者”,跟隨發現者進行二次搜索,是一種加速收斂的策略。

3)果蠅“反捕食行為”方式
通過設置“反捕食行為”來防止果蠅總是停留在某一位置,陷入局部最優,是一種最優保存策略。

式中:X_axis為當前迭代下的全局最優位置;FR3為個體飛行范圍,由X_axis 決定,果蠅個體隨機飛向全局最優位置附近,可通過設置FR3值為零的分量的個數約束飛向最優位置的距離,零分量的個數越多,意味著距離全局最優位置越近。
果蠅優化算法步驟:
1)初始化參數。設置種群規模、最大迭代次數、飛行方向,果蠅各類群體比例。隨機初始化果蠅個體位置。
2)計算果蠅的氣味濃度值。氣味濃度判斷值Sy=Xy,將Sy代入味道濃度判定函數F(X) 中,本文的判定函數F(X)為總成本函數C(K)。計算每個個體當前位置的味道濃度值Smelly,Smelly=F(Sy)。
3)對氣味濃度值進行排序 sort(Xi)。記錄種群的全局歷史最佳位置X_axis 和最佳氣味濃度值Smellbest;根據氣味濃度值大小和群體比例參數M設置果蠅“發現者”“跟隨者”和“反捕食行為”群體。
4)多類種群位置更新。根據式(15)~(17)更新果蠅群體位置。
5)重復步驟2)~4),直到迭代次數最大,停止迭代并輸出結果。
以某后勤保障區域的車輛裝備維修保障活動為例,對某類型車輛裝備的維修備件進行優化配置。要求根據車輛的故障規律與動用計劃,分析維修備件的需求規律,并對備件進行庫存控制決策優化。考慮4 類故障和5 類備件,車輛裝備的小修、中修、大修的間隔期分別為250、500 和1000 h,其他基礎數據如表2 所示,部分數據來源于文獻[15]。

表2 基礎數據參數Table 2 Basic data parameters
為了驗證模型的適用性,設計以下兩個仿真實例。實例1 用于驗證不同初始摩托小時下,各預計摩托小時支出量與備件消耗量的關系;實例2 用于優化備件庫存控制方案。
實例1 仿真:以某后勤保障區的車輛裝備為例,設置1~4 號車輛裝備的初始摩托小時分別為1、251、501、751 h。根據車輛的故障信息與備件需求信息,研究這4 輛車在摩托小時預計支出量在0~1000 h 時各備件消耗量的變化情況。在給定的參數范圍下,隨機生成實例數據,通過1.2 小節中的方法計算1、3、5 號備件消耗量隨摩托小時支出量的變化規律。
實例2 仿真:給定10 輛一般用車和30 輛重點用車的動用計劃參數信息,如表3 所示。第2 年動用的車輛裝備接著第1 年之后繼續使用,分別制定這兩年的庫存控制方案,使得年度庫存成本最優。根據給定參數范圍,隨機生成實例。設定IFOA 迭代次數為200 次,果蠅群體大小為30。果蠅“發現者”“跟隨者”以及“反捕食行為”比例分別為50%、20%、30%。仿真運行30 次,并對最佳運行結果方案進行詳細分析。為了驗證算法的優越性,這里選擇遺傳算法進行對比實驗,設置交叉概率為0.9,變異概率為0.1。

表3 車輛動用計劃Table 3 Vehicle usage plan
實例1 仿真分析:1 至4 號車輛裝備的初始摩托小時分別為1、251、501、751 h。通過1.2 小節中方法計算1、3、5 號備件消耗量隨摩托小時支出量的變化規律,仿真結果如圖4 所示,主要包括忽略自然隨機因素和考慮自然隨機故障時兩部分的備件消耗規律。
圖4 中的(a)、(b)、(c)分別對應忽略自然隨機因素時,各車輛裝備1、3、5 號備件的消耗量規律,即僅考慮定程維修下車輛在摩托小時各備件消耗量隨摩托小時支出量的變化規律。可以看出,備件的消耗具有一定的周期性,且不同初始摩托小時的車輛備件消耗量圖像可以通過平移重合。這是因為,在不考慮自然隨機故障時,由于車輛的維修間隔期不變,故車輛維修產生周期性。另一方面,由于各車初始摩托小時支出量不同,導致各車輛裝備的備件消耗量具有超前或滯后的現象。可以看出,各車輛裝備在摩托小時預計支出量為1000 h 時,各車輛裝備的備件消耗量相同,這是因為初始摩托小時分別為1、251、501、75 1 h 的4 輛車在預計支出量為1000 h 時顯然均經歷了1 次大修、1 次中修和2 次小修,與實際情況一致。仿真結果說明,車輛裝備的定時定程維修和備件消耗具有顯著的規律性,這是由車輛裝備按照發動機摩托小時的支出量和各級維修維護的規定決定的。

圖4 備件消耗量變化規律Fig.4 Spare-part consumption change rule
圖4 中的(d)、(e)、(f)分別對應考慮自然隨機因素時,各車輛裝備1、3、5 號備件的消耗量規律,即考慮定時定程維修和自然隨機故障維修下車輛在摩托小時各備件消耗量隨摩托小時支出量的變化規律。可以看出,備件的消耗不再具有周期性,且車輛裝備的圖像與圖(a)、(b)、(c)相比發生了明顯變化。這是因為,在考慮自然隨機故障時,自然隨機故障率隨摩托小時支出量的變化而變化。摩托小時支出量越高其隨機故障率越大,為了對比加入隨機故障因素后,備件消耗量的變化規律,以3、4 號車為例說明。3、4 號車的備件消耗量最先加速上升,這是因為其初始摩托小時較大,所以自然隨機故障率也大的原因。在支出量達到300 h 和500 h 時,備件消耗量開始緩慢上升,與實際情況相適應,這是因為大修后摩托小時歸零,隨機故障率減小導致的。一般情況下車輛裝備的備件消耗規律性弱于僅考慮定時定程維修的備件消耗規律,大修之前車輛裝備的備件消耗增量相比大修之后更大。掌握車輛裝備備件的消耗規律,可以避免庫存積壓或嚴重缺貨等不良現象發生。
方案2 仿真分析:首先,根據第1 年的初始摩托小時與預計摩托小時支出量,容易計算出年末摩托小時支出量,即為第2 年的初始摩托小時。通過1.2小節中方法計算各備件的消耗量,結果如表4 所示,然后根據計算結果進行基于定期檢查策略的庫存決策優化,對運行結果方案進行詳細分析。

表4 備件消耗量Table 4 Spare-part consumption
表4 給出了40 輛車輛裝備連續兩年的備件消耗量。從表4 中容易看出,第2 年的備件消耗量明顯高于第1 年的消耗量,這是因為第2 年的所有車輛裝備摩托小時預計支出量是第1 年的兩倍,導致第2 年的需求量與第1 年的需求量有明顯的差異,這表明動用計劃嚴重影響著備件消耗量。另外,由于第2 年的車輛類型和數量沒有發生變化,一般來說第2 年的備件消耗量大約等于第1 年的2 倍,這與仿真結果中第2 年備件的增長率不一致,主要是因為第1 年的車輛經過一年的使用,存在車輛經過大修之之后,車輛如新,即摩托小時歸零的情況,第2 年初始摩托小時降低。而第1 年未經過大修的車輛裝備,摩托小時不歸零,第2 年的初始摩托小時增加,這當然也就導致了故障發生規律的改變。仿真結果說明,車輛裝備的備件消耗率受自然隨機故障率和定時定程大修影響較大,車輛裝備的備件科學預算應符合實際情況。
圖5 展示了第一年和第二年IFOA 的收斂過程對比圖,容易看出平均優化過程與最佳優化過程在40 次迭代以后開始重合且收斂,這意味著每一次的運行結果均可達到最優的庫存成本。使用IFOA 和GA 兩類算法再次同時獨立求解算例30 次,算法的收斂過程如圖6 所示。從圖6 中可以看出,無論是第一年還是第二年,IFOA 算法收斂速度都更快。這是因為通過對模型結構特點的分析,確定了決策變量的界限,顯著減小了算法的搜索空間。另外,IFOA 算法利用多類種群位置更新方式,設置果蠅“發現者”進行大方向范圍搜索,是一種多樣性保存策略,提高了果蠅全局搜索能力。設置果蠅“加入者”跟隨“發現者”進行二次搜索,提高了算法的收斂速度。設置“反捕食行為”來防止果蠅總是停留在某一位置,解決了算法容易陷入局部極值的問題。該算法即使是較小的種群規模,收斂速度依然很快,適用于大規模的備件聯合補貨問題。

圖5 IFOA 收斂過程對比Fig.5 Convergence process comparison of IFOA

圖6 IFOA 與GA 收斂過程對比Fig.6 Comparison of IFOA and GA convergence processes
表5、6 展示了兩個年度的庫存控制計劃方案,第一年度的基本循環周期T=0.094 1 年,即34 天左右,各備件的基本周期乘子分別為1、1、1、2 和3,即1 至3 號備件每隔34 天補貨一次,4 號備件每隔68 天補貨一次,5 號備件每隔102 天補貨一次。5 種備件的每次補貨量分別為295、254、58、280和191 個。在該決策方案設置下,維修備件庫存總成本可達到最小。同理,第二年度T=0.068 2年,即25 天左右,備件i每隔Ti天補貨一次。

表5 第1 年庫存控制方案Table 5 Inventory control plan for the first year

表6 第二年庫存控制方案Table 6 Inventory control plan for the second year
在動用維修保障計劃期內,車輛裝備的日常維修主要包括預防性維修維護和修復性維修。考慮車輛的定時定程維修維護和自然隨機故障維修兩類維修方式,分析動用使用計劃下車輛裝備的備件消耗規律,計算了一般用車和重點用車在保障期的備件消耗量。另外,通過引入麻雀搜索算法中的多類種群位置更新方式改進了果蠅優化算法,并以此計算車輛裝備的備件庫存控制模型。本文根據實際某型車輛裝備的實踐特點建立的備件預測模型,不僅適用于動用使用計劃的車輛裝備,同樣也適用于備件消耗歷史數據有限、信息內容不完善等其他動用計劃下的備件資源預測問題。