張 云
(西安航天動力試驗技術(shù)研究所,陜西西安 710100)
采購預測是指企業(yè)的決策者在商品采購市場上調(diào)查取得資料的基礎(chǔ)上,經(jīng)過分析研究,并運用科學的方法來測算未來一定時期內(nèi)商品的供求及其變化趨勢,從而為商品采購決策和制定商品采購計劃提供科學的依據(jù),保證供給平衡和利潤最大化的過程。
預測的理論和方法很多,按客觀因素分為定性方法和定量方法,其中定量方法又分為時間序列法、季節(jié)性預測和因果分析法。時間序列法是一種統(tǒng)計分析方法,因為歷史數(shù)據(jù)表現(xiàn)出比較強的規(guī)律性,因此可以根據(jù)它過去的變動趨勢預測未來。時間序列有4 種變動因素:①長期趨勢,在整個預測期內(nèi)事物呈現(xiàn)出逐漸增加或漸減的趨勢;②周期變動,以某一時間間隔為周期的周期性變動,如危機和復蘇的交替;③季節(jié)變動,以一年為周期的周期變動,如服裝行業(yè)銷售額的季節(jié)性波動;④偶然變動,除上述3 種情況之外的不規(guī)則變動。時間序列法通常對4 種變動因素有側(cè)重地進行預處理,從而派生出剔除季節(jié)變動法、移動平均法、指數(shù)平滑法、自回歸法、時間函數(shù)擬合法等具體預測方法。
無論是制造業(yè)還是服務(wù)業(yè),都在通過降低成本的方法取得更多的利潤。因為采購量決定庫存量,而成本降低的重要手段就是降低庫存,所以合理的采購預測成為降低庫存、增加收益的重要手段。文獻[1]使用梯度方法和拉格朗日松弛法構(gòu)建了采購預測模型,對采購成本的優(yōu)化問題做出了一個良好的解決。文獻[2]分析采購預測中存在的問題,并對在按訂單生產(chǎn)中供應(yīng)鏈遇到的采購預測問題,給出了合理的前提條件和解決辦法。文獻[3]在考慮到所有與采購決策相關(guān)的成本的基礎(chǔ)上提出了基于數(shù)學規(guī)劃的采購預測模型,解決了鋼鐵制造公司軸承采購的預測問題。國內(nèi)[4]基于小波變換的自回歸移動平均模型為框架,實現(xiàn)時間序列預測在醫(yī)用耗材采購管理中的應(yīng)用。文獻[5]以石油企業(yè)物資采購現(xiàn)狀為切入點,對石油企業(yè)物資管理現(xiàn)狀信息化制約因素進行分析,提出詳細的信息化購買手段與實施措施。文獻[6]采用基于自回歸移動平均模型,且適用于小樣本情形的建模方法,然后分析政府采購和經(jīng)濟增長之間的因果關(guān)系。文獻[7]構(gòu)建自回歸移動平均(Autoregressive Moving Average,ARMA)(6,2)模型,并對模型進行白噪聲檢驗及數(shù)據(jù)擬合,并標明該模型適合預測PMI 的未來走勢。文獻[8]構(gòu)建了基于分布式系統(tǒng)的醫(yī)院物資使用量精準預測方案,并對差分自回歸移動平均(Autoregressive Integrated Moving Average,ARIMA)模型提出改進方法。文獻[9]先將數(shù)據(jù)進行卡爾曼濾波處理,再建立自回歸移動平均模型進行迭代預測,對配件需求進行了預測。文獻[10]構(gòu)建多組ARIMA模型并對模型進行白噪聲檢驗及參數(shù)檢驗,提出了相應(yīng)的幾條政策建議。
上述文獻中,利用或者改進算法提高預測精度在各行各業(yè)取得很好的應(yīng)用。而目前算法的典型做法就是首先需要對數(shù)據(jù)進行白化操作,使得數(shù)據(jù)滿足平穩(wěn)性。但是企業(yè)對物資的消耗具有明顯的季節(jié)特征,如果消除數(shù)據(jù)的此種內(nèi)在特征,其預測偏差比如偏大。本項目根據(jù)物資消耗的季節(jié)性和延續(xù)性特點,設(shè)計了縱向和橫向預測模型對數(shù)據(jù)進行預測,縱向預測模型充分利用了物資消耗的季節(jié)特性,而橫向預測模型則考慮消費的趨勢和延續(xù)性特點。最后通過兩種預測結(jié)果的加權(quán)平均,最終實現(xiàn)了物資消耗更準確的預測。
時間序列是同一種現(xiàn)象在不同時間上的相繼觀察值排列組成的數(shù)字序列。時間序列預測常用的模型分為3 種,分別是回歸(Autoregressive,AR)模型、滑動平均(Moving Average,MA)模型以及自回歸模型和滑動平均模型。AR 模型的預測方式是根據(jù)過去的觀測值和現(xiàn)在的干擾值,構(gòu)成線性組合進行預測,自回歸模型的數(shù)學公式為:
其中,p 為自回歸模型的參數(shù),φi(i=1,2,…,p),εt為干擾值,yt為一個平穩(wěn)時間序列。模型的目的是辨識待定系數(shù)φi,然后根據(jù)φi進行后續(xù)數(shù)據(jù)的預測。
而MA 模型的預測方式是通過過去的干擾值和現(xiàn)在的干擾值的線性組合預測。滑動平均模型的數(shù)學公式為:
其中,q 為模型的階數(shù),θj(j=1,2,…,q)為模型的系數(shù);εt為誤差;yt為平穩(wěn)時間序列。同樣模型估計就是得到θj。
ARMA 模型,即自回歸模型和滑動平均模型的組合,其數(shù)學公式為:
從回歸方程可知,自回歸移動平均模型綜合了AR 和MA 兩個模型的優(yōu)勢。在ARMA 模型中,自回歸過程負責量化當前數(shù)據(jù)與前期數(shù)據(jù)之間的關(guān)系,移動平均過程負責解決隨機誤差項的求解問題,因此該模型更為有效和常用。
AR/MA/ARMA 模型適用于平穩(wěn)時間序列的分析,在現(xiàn)實生活中,存在很多非平穩(wěn)的時間序列,它們的均值和方差隨著時間的變化而變化,當時間序列存在上升或下降趨勢時,這些模型的預測效果會迅速變差。統(tǒng)計學家們發(fā)現(xiàn),很多時間序列本身雖然不平穩(wěn),但是經(jīng)過差分(相鄰時間點的指標數(shù)值相減)之后,形成的新時間序列就變成平穩(wěn)時間序列了。ARIMA 模型能夠用于齊次非平穩(wěn)時間序列的分析,這里的齊次是指原本不平穩(wěn)的時間序列經(jīng)過d 次差分后成為平穩(wěn)時間序列。因此,差分自回歸移動平均模型又寫成ARIMA(p,d,q)。其中,p 代表自回歸階數(shù),d 代表差分次數(shù),q 代表移動平均階數(shù)。因為其方法可以處理齊次非平穩(wěn)時間序列,所以有更廣泛的應(yīng)用。
采購數(shù)據(jù)的變化和波動不是一個零均值的平穩(wěn)隨機過程,因此本項目采用多個ARIMA 模型對數(shù)據(jù)進行處理和預測。
物資的消耗還具有延續(xù)性,因為相鄰兩個月的物資消耗變化不會很大。比如項目啟動時會需要特殊的物資,需求會一直延續(xù)直到項目結(jié)束,這種數(shù)據(jù)的預測用ARIMA 模型可以取得較好的結(jié)果。但是物資采購量具有顯著的季節(jié)性特征,比如棉衣,其最大消耗量出現(xiàn)在10 月份到次年的3 月份之間;而白糖消耗高峰則出現(xiàn)在6~8 月。因為需求量隨季節(jié)的突變,物資消耗的季節(jié)相關(guān)性特征使得無論模型如何選擇和優(yōu)化,直接使用上幾個月的數(shù)據(jù)進行預測,都無法取得很好的預測結(jié)果。本項目中,把預測過程分為兩個獨立的預測模型,然后通過兩種模型預測值的加權(quán)平均,得到最終的預測結(jié)果。
對歷史采購數(shù)據(jù)以每年的月份為列,年份為行,構(gòu)成兩維數(shù)據(jù)表格。此表中橫向表示了月份變化引起采購量的變化,而縱向表示不同年份中同一個月份采購量的變化。以2008 年開始到2018 年末每月某生活物資的采購量數(shù)據(jù)為例,可以構(gòu)成一個11行、12 列的二維矩陣。
該矩陣中,沿著列的方向縱向看,可以看出每年的1 個月構(gòu)成一個序列。例如,2008 年1 月,2009 年1 月,…,2018 年1 月的11 個數(shù)據(jù)構(gòu)成一個序列。此序列用于預測2019 年1 月的物資采購數(shù)據(jù)。同理,2008 年12 月,2009 年12 月,…,2018 年12 月的11 個數(shù)據(jù)構(gòu)成另外一個序列,用于預測2019 年12 月的物資采購數(shù)據(jù)。這樣每個月的同比歷史數(shù)據(jù)構(gòu)成一個縱向預測序列。該序列主要用于預測物資需求的季節(jié)變化,例如2019 年12 月的棉衣量需求的縱向預測,由前11 年12 個月的棉衣量需求進行預測。
采購數(shù)據(jù)的增加或者減小是有延續(xù)性的,縱向預測僅利用了采購數(shù)據(jù)的季節(jié)特性,沒有反映數(shù)據(jù)的延續(xù)性特征。比如新的項目開始后,物資需求先持續(xù)增加,然后衰減,直到項目結(jié)束。但項目的啟動或者突發(fā)需求從二維矩陣的縱向中得不到任何信息可以預測這種情況。因此再構(gòu)造一個連續(xù)的以每月環(huán)比采購量構(gòu)成的序列,該序列沿著二維矩陣橫向進行預測。表格每行只有12 個數(shù)據(jù),當需要取12 月份的下一個月時,該取的數(shù)據(jù)便是次年的1 月份,就是靠月的自然順序構(gòu)造序列。例如:2019 年12月的棉衣量的橫向預測,由2019 年8 月、9 月、10 月、11 月,即前4 個月的數(shù)據(jù)進行預測。
綜上分析,本文對一種物資的采購數(shù)據(jù)預測由縱向和橫向預測共同構(gòu)成,根據(jù)實際數(shù)據(jù)分析,選取縱向預測結(jié)果的0.6 倍加上橫向預測的0.4 倍構(gòu)成最終的預測結(jié)果。
從單位歷史采購數(shù)據(jù)可知采購物資數(shù)量為一階單整時間序列,因此逐月差分階數(shù)d=l。對于非季節(jié)自回歸和移動平均階數(shù)p 和q,運用Eviews8.0 軟件并觀察序列的自相關(guān)函數(shù)和偏自相關(guān)函數(shù),可以得到最優(yōu)的模型參數(shù)為ARIMA(1,1,1)。
根據(jù)2008 年1 月到2018 年12 月、每年12 個月的歷史數(shù)據(jù)為樣本,建立橫縱向預測模型,并對2019 年1~7 月的采購需求進行預測。其縱向預測、橫向預測、加權(quán)結(jié)果和實際采購數(shù)據(jù)結(jié)果見表1。
表中可以看出,2019 年6 月橫向預測的結(jié)果根據(jù)過去數(shù)據(jù)的變化趨勢,需求量明顯上升,所以橫向預測的結(jié)果為9.4。但歷史數(shù)據(jù)顯示6 月份的需求量僅為6.2,加權(quán)后把明顯存在超調(diào)的數(shù)據(jù)拉回到和實際采購量比較接近的水平,這組數(shù)據(jù)反映了數(shù)據(jù)的季節(jié)性特征。又如2019 年7 月,縱向預測的結(jié)果偏小,而橫向預測則根據(jù)相鄰的數(shù)據(jù)預測,可以看出其充分反映了數(shù)據(jù)的延續(xù)性。從表中可以看出,1 月份~7 月份的加權(quán)結(jié)果最接近實際采購信息,表明了該方法的有效性。
本項目的方法充分利用了采購數(shù)據(jù)的季節(jié)特性,利用了橫、縱向兩個模型對采購數(shù)據(jù)集進行預測,實驗表明該方法明顯優(yōu)于常規(guī)的橫向預測方法。不足之處是需要的計算量變大,需要構(gòu)造兩個序列進行預測然后再加權(quán)平均。但是隨著計算能力的提高,該缺點容易被克服。后續(xù)的研究中應(yīng)該增加人為預警機制,如大項目的啟動時間預警、提前啟動物資采購等,以減少成本并保證供應(yīng)的時效性。
表1 某物資的預測和實際采購結(jié)果 千件