魏 燊,劉雯雯
(鄭州大學(xué)力學(xué)與安全工程學(xué)院,河南 鄭州 450001)
某生產(chǎn)企業(yè)原材料分為A、B、C 三類(lèi),該企業(yè)每年48 周安排生產(chǎn),需提前24 周制定原材料訂購(gòu)和轉(zhuǎn)運(yùn)計(jì)劃。由于原材料的特殊性,供應(yīng)商供貨量存在不穩(wěn)定的狀況,實(shí)際供貨量可能多于或少于訂貨量。對(duì)于企業(yè)來(lái)說(shuō),期望在滿(mǎn)足正常生產(chǎn)需求條件下,以最經(jīng)濟(jì)和最低損耗作為優(yōu)化目標(biāo),得到一個(gè)最優(yōu)的采購(gòu)優(yōu)化與運(yùn)輸方案。
現(xiàn)已知企業(yè)每周的產(chǎn)能為2.82 萬(wàn)m3,每立方米商品消耗A 類(lèi)原材料0.6 m3,或B 類(lèi)0.66 m3,或C 類(lèi)0.72 m3。且企業(yè)需要保持至少兩周生產(chǎn)需求的原材料供應(yīng)量,對(duì)供應(yīng)商的供貨也要全部收購(gòu)。每家轉(zhuǎn)運(yùn)商運(yùn)輸能力為6 000 m3/周,一家供應(yīng)商每周供應(yīng)原材料盡量由一家供應(yīng)商提供。
需要解決的問(wèn)題:根據(jù)附件,確定能夠滿(mǎn)足企業(yè)正常生產(chǎn)的最少原材料供應(yīng)商數(shù)量。針對(duì)選擇的最少供應(yīng)商,制定企業(yè)未來(lái)24 周最經(jīng)濟(jì)的原材料訂購(gòu)方案,并依據(jù)此制定損耗最少的轉(zhuǎn)運(yùn)方案,且對(duì)該方案進(jìn)行評(píng)價(jià)。
首先,需要以過(guò)去5 年的供貨量數(shù)據(jù)作為依據(jù),預(yù)測(cè)未來(lái)24 周的供貨量。然后以滿(mǎn)足供應(yīng)商數(shù)量最小為需求設(shè)計(jì)算法求解。我們?cè)谝呀?jīng)選擇出的供應(yīng)商中尋找最經(jīng)濟(jì)訂購(gòu)方案。考慮到新的訂購(gòu)方案可以滿(mǎn)足企業(yè)未來(lái)24 周全部的生產(chǎn)需求。而參照評(píng)價(jià),過(guò)去五年的訂購(gòu)方案與供貨情況并不能滿(mǎn)足正產(chǎn)生產(chǎn)情況,所以先求解出滿(mǎn)足生產(chǎn)條件且供貨商數(shù)量一定的條件下的以訂購(gòu)成本為目標(biāo)函數(shù)的0-1 規(guī)劃模型,再通過(guò)定義的企業(yè)經(jīng)濟(jì)度,計(jì)算出新的訂購(gòu)方案的經(jīng)濟(jì)度[1]。轉(zhuǎn)運(yùn)損耗度最小的優(yōu)化模型需要以新的訂購(gòu)方案為前提建立0-1 規(guī)劃模型,考慮到遺傳算法的自適應(yīng)和尋找全局最優(yōu)解的能力較強(qiáng),故采用遺傳算法求解。
建立概率預(yù)測(cè)函數(shù)。由于題目附件中只給出了近五年的供貨量和銷(xiāo)售量數(shù)據(jù),并不能準(zhǔn)確反映未來(lái)24 周的變化趨勢(shì),所以需要對(duì)供應(yīng)商未來(lái)24 周內(nèi)的供應(yīng)量進(jìn)行預(yù)測(cè)。
建立的概率預(yù)測(cè)函數(shù)分為兩個(gè)部分,一部分是事件發(fā)生的概率,一部分是實(shí)際預(yù)測(cè)的函數(shù),自變量x為24 周中的第x 周:
由供貨商過(guò)去五年內(nèi)未供貨的概率確定預(yù)測(cè)函數(shù)中的概率部分:
式中:a、b 滿(mǎn)足a+b=1;a=五年內(nèi)出現(xiàn)供貨量不為0的周數(shù)/五年內(nèi)總數(shù)據(jù)的個(gè)數(shù);b=五年內(nèi)出現(xiàn)供貨量為0 的周數(shù)/五年內(nèi)總數(shù)據(jù)的個(gè)數(shù)。
3.2.1 定義生產(chǎn)企業(yè)經(jīng)濟(jì)度
對(duì)于生產(chǎn)型企業(yè)來(lái)說(shuō),其成本的產(chǎn)生不僅僅是在原材料的采購(gòu)方面,其生產(chǎn)流程的正常進(jìn)行也是另一個(gè)重要的因素。首先我們定義生產(chǎn)穩(wěn)定性。由題目附件數(shù)據(jù)預(yù)處理的分析我們知道供應(yīng)商所提供的產(chǎn)量在大部分情況下是不滿(mǎn)足企業(yè)所下的訂單量的,所以可以由供應(yīng)商對(duì)企業(yè)的供貨穩(wěn)定性來(lái)衡量生產(chǎn)穩(wěn)定性,如表1 所示。
表1 不同原材料供貨完成情況
求均值得到平均供貨完成率為φ=0.64,以此作為企業(yè)的生產(chǎn)穩(wěn)定性。我們定義企業(yè)的經(jīng)濟(jì)度為:
式中:φ 為企業(yè)的生產(chǎn)穩(wěn)定性;Q2為企業(yè)的訂購(gòu)成本。
3.2.2 以采購(gòu)成本最低為目標(biāo)函數(shù)的0-1 規(guī)劃模型
引入0-1 變量
式中:Aij為第j 周第i 家A 類(lèi)供應(yīng)商的供貨量;Bij為第j 周第i 家B 類(lèi)供應(yīng)商的供貨量;Cij為第j 周第i家C 類(lèi)供應(yīng)商的供貨量。
約束條件有兩個(gè),一個(gè)是保障該企業(yè)保持不少于一周的庫(kù)存儲(chǔ)備量,另一個(gè)是在第j 周買(mǎi)到的貨品數(shù)量不超過(guò)本周供應(yīng)商的最大供貨量。因?yàn)橹豢紤]了訂購(gòu)策略,所以合理假設(shè)轉(zhuǎn)運(yùn)損耗率為定值0.98。
3.2.3 基于分支定界法0-1 規(guī)劃模型
分支定界法可用于求解如本文這樣的純整數(shù)規(guī)劃問(wèn)題[2],若松弛條件的可行域有界,則相應(yīng)的整數(shù)規(guī)劃的可行域會(huì)是有限個(gè)點(diǎn)組成的集合,分支定界法使得每次規(guī)劃從可行域中去除一部分點(diǎn)集,這樣經(jīng)過(guò)有限次的分支,一定會(huì)有整數(shù)點(diǎn)落在可行域的頂點(diǎn)處。
以轉(zhuǎn)運(yùn)損耗率最低為目標(biāo)函數(shù),每家轉(zhuǎn)運(yùn)商的運(yùn)輸能力不超過(guò)6 000 m3/周為約束條件,是否選擇該家轉(zhuǎn)運(yùn)商為0-1 變量,建立0-1 規(guī)劃模型:
式中:xit為第t 周第i 個(gè)供應(yīng)商的供貨量;yint為第t 周第n 個(gè)轉(zhuǎn)運(yùn)商對(duì)供應(yīng)商i 是否轉(zhuǎn)運(yùn),αnt為第t 周第n個(gè)轉(zhuǎn)運(yùn)商的損耗率。
以預(yù)測(cè)數(shù)據(jù)為基礎(chǔ),設(shè)計(jì)算法在重要性排名為前五十名的供應(yīng)商中選擇。我們假設(shè)在第一周企業(yè)已有一周的庫(kù)存量,要求滿(mǎn)足企業(yè)每周的庫(kù)存儲(chǔ)備量,然后進(jìn)入下一周安排訂購(gòu),原理同第一周。在此基礎(chǔ)上設(shè)計(jì)算法流程圖[3]如圖1 所示。
通過(guò)Excel 求解得到最小供應(yīng)商數(shù)量為38 家,具體結(jié)果如圖2 所示。
圖2 中數(shù)字代表供應(yīng)商在題目所給附錄中的序號(hào),深色方格就是得到的滿(mǎn)足企業(yè)生產(chǎn)的最少供應(yīng)商。
因?yàn)楸疚脑O(shè)計(jì)到的0-1 變量個(gè)數(shù)過(guò)多,所以借助MATLAB 中的BranchBound()函數(shù)進(jìn)行求解。
在新的訂購(gòu)方案下,企業(yè)的采購(gòu)成本(W2)為897 787.96 萬(wàn)元。我們以過(guò)去5 年企業(yè)的平均采購(gòu)成本(W1)作為對(duì)照,計(jì)算得到W1=767 854.3 萬(wàn)元。已知新的訂購(gòu)方案可以完全滿(mǎn)足企業(yè)未來(lái)24 周的生產(chǎn)和庫(kù)存需求,所以生產(chǎn)保障穩(wěn)定性φ2=1,由題目所給的附件一的數(shù)據(jù)計(jì)算得到過(guò)去五年的生產(chǎn)保障穩(wěn)定性為φ1=0.64。
遺傳算法(GA)是一種具有很強(qiáng)的全局尋優(yōu)能力,適合求解復(fù)雜的多極值優(yōu)化問(wèn)題和組合問(wèn)題的智能算法,本文采用遺傳算法進(jìn)行求解,通過(guò)MATLAB進(jìn)行編碼,生成優(yōu)化方案[4]。
4.3.1 染色體編碼
種群大小為20,染色體的個(gè)數(shù)為402,對(duì)應(yīng)402個(gè)供應(yīng)商,迭代次數(shù)為1 000 代。
4.3.2 適應(yīng)度函數(shù)的設(shè)計(jì)
如果運(yùn)量不足的話(huà),適應(yīng)度函數(shù)為零如果運(yùn)量滿(mǎn)足的話(huà),將損耗率的預(yù)測(cè)值升序排列,將每周供貨的預(yù)測(cè)量除以6 000,向下取整,用損耗率的預(yù)測(cè)值乘以取整值乘以6 000,再加上下一個(gè)損耗率的預(yù)測(cè)值乘以供貨的預(yù)測(cè)值減去6 000 乘以取整值的結(jié)果,最后再將這個(gè)值取反,作為適應(yīng)度采用MATLAB 遺傳算法工具箱求解,得到最終結(jié)果。
新訂購(gòu)方案在滿(mǎn)足了全部24 周的供應(yīng)需求,其生產(chǎn)穩(wěn)定性為1,經(jīng)濟(jì)度為897 787.96。過(guò)去5 年內(nèi)在企業(yè)的訂購(gòu)模式下訂購(gòu)成本為767 854.3 萬(wàn)元,低于新的訂購(gòu)方案,但其生產(chǎn)穩(wěn)定性?xún)H為0.64,所以計(jì)算出過(guò)去5 年的經(jīng)濟(jì)穩(wěn)定度為1 199 772.34??芍?jīng)濟(jì)度降低了25.17%,具有較好的優(yōu)化效果。