摘要:文章采用遺傳算法優化反饋人工神經網絡來建立一個預測模型,對家電連鎖行業的某品牌商品的采購額進行預測。通過準確預測來降低企業庫存和機會成本,達到提升核心競爭力的要求。通過與國內某知名家電連鎖企業的采購預測工具所得結果相比,文中的模型預測結果有著較為明顯的精度。這充分說明本文的模型可以有效降低企業的庫存和機會成本,具有較好的應用價值。
關鍵詞:遺傳算法;反饋神經網絡;反向傳播算法;家電連鎖行業
家電連鎖行業是一類競爭激烈、利潤微薄的行業。在同行業企業銷售產品和服務差異化逐漸減小的情況下,控制成本成為提高企業盈利水平的重要手段。庫存成本和缺貨結果造成的機會成本是該行業成本的重要組成部分。而采購決定庫存和機會成本,采購數量的多少直接決定了這兩類成本的大小。因此,準確預測商品需求成為家電連鎖行業提高核心競爭力的關鍵因素。
目前家電連鎖企業的需求預測還停留在簡單、被動的預測基礎上,只是參考庫存和賣場銷售的數據,并沒有系統科學的進行需求預測。而且我們知道,家電的銷售數量是多因素相關的復雜非線形函數,選擇什么預測方法來進行有效預測當是企業認真決策的。常用的預測方法主要有:時間序列分析、回歸分析模型、灰色系統理論以及人工神經網絡等。時間序列分析的缺點在于過多依賴歷史數據,對一些非常規因素考慮不夠;回歸模型需要考慮銷售數量與其他影響因素的函數關系,這是很難確定的;灰色系統需要對關聯度分析做大量運算,而且經過比較,長時期的預測結果很不穩定。神經網絡的優點在于它可以利用歷史數據以及影響輸出的各方面因素,通過訓練來逼近輸入、輸出函數之間的非線形關系,避開了公式形式的表述;另外,神經網絡的知識采取分布式存儲,這樣使得網絡具有魯棒性,容錯能力強。因此,選用人工神經網絡來處理家電連鎖企業的采購預測問題是十分合適的。
本文使用Elman神經網絡進行建模預測。Elman是一種反饋型神經網絡(RNN)。它是一類反饋動力學系統,比前向神經網絡(FNN)具有更強的計算能力,能夠更好的反映系統的動態性。Elman網絡是建立在BP神經網絡基礎上的,比BP神經網絡多了一個背景層。使用Elman網絡進行建模可以準確反映家電連鎖企業銷售數量的前后幾個觀測數據的相關性。Elman網絡采取與BP網絡一致的權值更新方法——最速梯度下降法,其缺陷是容易陷入局部最小值,所以本文借助遺傳算法(GA)來訓練優化初始權值。遺傳算法針對所給問題進行編碼,通過適應度衡量、選擇、交叉、突變這幾種進化機制來尋找最優解。遺傳算法全局變異算子可以避免陷入局部最優;遺傳算法的并行搜索特性,保證了算法的快速、穩定。
一、 ELMAN網絡的數學模型
典型的ELMAN網絡結構模型如圖1。令xi0(t)代表t時刻網絡的第i個輸入向量,xj1(t)代表t時刻隱藏層的第j個輸出向量,xk2(t)代表t時刻背景層的第k個輸出,xm3(t)代表t時刻的網絡的第m個輸出,wij1代表輸入層和隱藏層的連接權值,wjk2代表背景層和隱藏層的連接權值,wjm3代表隱藏層與輸出層的連接權值。網絡的數學表述為:
其中,f為談tansig函數,p為purelin函數;當?琢固定為0時,此網絡為標準的Elman網絡;當?琢不為0時,為修改的Elman網絡;設第t時刻的網絡實際輸出為xa3(t),學習指標函數為均方誤差:
圖1ELMAN網絡模型
Elman網絡的初始權值由隨機產生的-1到1之間的均勻實數組成。每次訓練完畢,計算一次均方誤差MSE。同時,把誤差平方和E(t)作為遺傳算法的適應度函數,通過引用遺傳算法優化誤差平方和,來確定最優的初始權值。由于適應度函數通常尋求最大值,而網絡要求誤差平方和最小,所以這里用gs(wij)=1/E(t)來代替目標函數。
二、 模型工作流程
模型的工作流程如下:
1. Elman網絡初始化以及初始權值編碼。遺傳算法將Elman網絡的初始隨機權值編碼為由若干染色體組成的初始種群。
2. 個體適應度評價。算法對種群中的個體進行打分。本文以gs(wij)=1/E(t)作為適應度評價函數,其中s代表個體。評價函數值越大,性能越優。
3.選擇。利用比例于各個體適應度的概率來決定父輩。本文使用輪盤賭(Roulette Wheel Selection)方法。如果種群數為M,個體s的適應度為gs(wij),則個體被選擇的概率為ps=gs(wij)/gs(wij)。適應度越高,被選中的可能性就越大。
5. 變異。產生子輩的一種方法:通過一個小概率對個體編碼串上的某些部位進行改變,從而維持群體的多樣性,防止早熟。并且,變異通過調整個體編碼串的某些基因,就可以從局部的角度出發使個體更加接近最優解,提升了算法的局部搜索能力。本文使用非均勻變異。
6. 形成新的一代。
7. 檢查是否滿足停止準則。本文中當達到最大后代數時,算法停止。
8. 產生優化后的神經網絡初始權值。
9. Elman網絡工作。網絡進行學習和訓練,并更新權值,計算網絡誤差,觀測是否達到要求精度并利用測試集檢驗網絡效果。
10. 當訓練回合達到時,流程結束。
整個運算流程請見圖2。
三、 應用實例
文章的目的是想通過準確預測來確定采購需求,從而達到節約成本的策略。由于家電連鎖企業涉及多個品類(手機、空調、白色小家電等),每個品類下又有多個品牌,所以必須分品牌進行預測。
某品牌商品在一個銷售時期的銷售額由以下函數所定義:
C=f(Si,P,E,H)
其中,C代表當期銷售額;Si代表采前i個時期歷史銷售額;E代表環境因素,包括外部宏觀經濟政策、替代性商品情況等;H代表銷售當期是否在假期。由于模擬經濟環境的復雜性,本文僅考慮歷史銷售額以及假期因素這些變量為Elman網絡的輸入變量。
圖2基于GA的ELMAN網絡運算流程
1. 數據準備。本文選擇的預測對象為某品牌手機的采購額。文中的數據為該品牌手機2004年52周,2005年41周的銷售額,觀測周期為1周。數據來源于某家電連鎖企業南京新街口賣場,具有一定的代表性。剔除掉4個異常觀測點后,對數據進行歸一化處理,使數據的范圍在[-1,1]之間。這里采用歸一化的公式為:X=2*-1。
圖3遺傳算法進化結果
2. 模型結構設計與實施。神經網絡的輸入向量為5維,分別為4周的銷售額和1個假期因素變量,假期因素表示為:0—無假期;1—有假期;輸出向量為4維,為下4周即下一個月的銷售額。所以ELMAN網絡便有5個輸入神經元和4個輸出神經元。由于單隱層的神經網絡可以實現任意的函數逼近,因此網絡選取一個隱藏層。根據Kolmogorov定理,單隱層的神經元數量為4個以上。在訓練過程中,我們通過檢驗網絡的均方誤差大小,最后確定最優的隱層神經元數量為27。背景層的神經元數量與隱層神經元數量一致。
遺傳算法的初始種群為200,選擇概率為0.07,交叉概率為0.28,變異概率為0.05,遺傳代數為500代。進化結果如圖3,可見,在400代適應度值已達到最大并趨于穩定。遺傳算法優化后的Elman神經網絡的均方誤差如圖4,可見,在2058回合,均方誤差已經降到0.001。
我們選取一組非學習集合中的數據來檢測模型的預測結果,與該企業正在使用的基于Winter模型的預測工具、純BP網絡模型的結果相比較結果如表1。平均絕對誤差分別為:GA優化的Elman網絡——2.86%,純BP網絡——4.485%,該企業目前的預測工具——15.612%。該數據說明文中的模型具有較為明顯的精度優勢。同時,以檢測集的兩個月來計算,選取基于GA的Elman網絡比該企業現在用的預測工具節約庫存、機會成本共:577 240元。
圖4預測模型均方誤差曲線
四、 總結
對于家電連鎖企業,能否準確預測需求已成為衡量企業競爭力一項重要標準。使用本文的預測模型可以減少需求的不確定性,控制可預測變量,有效減少庫存以及供應鏈上其它相關成本。模型較好的控制了預測誤差,但由于國情的特性,在一些突變點(如節假日銷售額突增),模型預測效果不是很理想。這主要是由于輸入條件限制,模型不具備營銷措施和宏觀環境的表述,這正是模型下一步主要改進和提高的方面。
參考文獻:
1.(美)Mehmed Kantardic.數據挖掘——概念、模型、方法和算法.北京:清華大學出版社,2003.
2.G.E.P.Box,G.M.Jenkins,G.C.Reinsel,Time Series Analysis:Forecasting and Control.Prentice Hall,Englewood Cliffs,NJ,1994.
3.D.M.Bates and D.G.Watts,Nonlinear Regression Analysis and Its Applications.Wiley,New York,1988.
4.J.L.Deng et al..Essential Topics on Grey System:Theory and Applications.China Ocean Press,Beijing,China,1988.
5.(美)Martin T.Hagan Howard B.Demuth Mark H.Beale.神經網絡設計.北京:機械工業出版社,2002.
6.Raja S.Toqeer,N.Suha Bayindir.Speed estimation of an induction motor using Elman neural network.Neurocomputing,2003,(55):727-730.
7.Goldberg,D.E.,Genetic Algorithms in search,optimization and machine learning.Addison—Wesley,Reading,MA,1989.
8.D.T.Pham,D.Karaboga.Training Elman and Jordan networks for system identification using genetic algorithms.Artificial Intelligence in Engineering,1999,(13):107-117.
9.王文杰,葉世偉.人工智能原理與應用.北京:人民郵電出版社,2004.
10.飛思科技產品研發中心.神經網絡理論與MATLAB 7實現.北京:電子工業出版社,2005.
11.雷英杰等.MATLAB遺傳算法工具箱及應用.西安:西安電子科技大學出版社,2005.
12.王小平,曹立明.遺傳算法——理論、應用與軟件實現.西安:西安交通大學出版社,2002.
13.Holland,J.Adaptation in natural and artificial systems.University of Michigan Press,1975.
14.Pei-Chann Chang,Yen—Wen Wang Chi—Yang Tsai.Evolving neural network for printed circuit board sales forecasting.Expert Systems with Application,2005,(29):87-91.
15.Elalfi,A.E.,Hauque,R., Elalami,M.E..Extracting rules from trained neural network using GA for managing E-business.Applied Soft Computing,2004,(4):65-79.
16.D.Gao,Y.Kinouchi,K.Ito,X.Zhao.Neural networks for event extraction from time series:a back propagation algorithm approach.FGCS,2005,(21):1097-1098.
作者簡介:聶鵬晨,南京大學工程管理學院管理科學與工程專業碩士生;陳國華,南京大學工程管理學院副教授;濮澤飛,南京大學工程管理學院管理科學與工程專業碩士生。
收稿日期:2007-04-05。
“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀”