魏貝貝 盧明銀
摘 要: 空調(diào)行業(yè)一直處于雙寡頭格局,從雙十一的價(jià)格戰(zhàn)到目前的疫情影響,中小企業(yè)的電子商務(wù)銷量預(yù)測面臨著更加嚴(yán)峻的考驗(yàn)。為降低傳統(tǒng)預(yù)測模型的低擬合度,提高預(yù)測精度,提出了布谷鳥算法與BP神經(jīng)網(wǎng)絡(luò)算法相結(jié)合的預(yù)測方法。首先對影響空調(diào)銷量預(yù)測的主要因素進(jìn)行了降維處理,其次運(yùn)用布谷鳥算法對BP神經(jīng)網(wǎng)絡(luò)算法的權(quán)值和閾值進(jìn)行優(yōu)化,同時(shí)在布谷鳥算法中引入了細(xì)菌覓食算法的群體信息共享機(jī)制,加快算法的收斂。通過與不同預(yù)測方法的結(jié)果對比,該方法的預(yù)測誤差更低,可以為空調(diào)電子商務(wù)銷量預(yù)測提供良好的科學(xué)依據(jù)。
關(guān)鍵詞: 因子分析;布谷鳥算法;BP神經(jīng)網(wǎng)絡(luò)算法;銷量預(yù)測
中圖分類號: TT-9
文獻(xiàn)標(biāo)志碼: A
Air Conditioning E-commerce Based on ImprovedCuckoo-BP Algorithm Sales Forecast
WEI Beibei LU Mingyin
(1.School of Mining Engineering, China University of Mining and Technology,Jiangsu Xuzhou 221100, China; 2.School of Mining Engineering, China Universityof Mining and Technology, Jiangsu Xuzhou 221100, China)
Abstract: The air-conditioning industry has always been in a duopolistic pattern. From the price war of the Double Eleven to the current epidemic, the forecast of SMEse-commerce sales is facing a more severe test. In order to reduce the artificial interference and the low fitting degree of the traditional prediction model and improve the prediction accuracy, it will propose a prediction method combining the cuckoo algorithm and the BP neural network algorithm. First of all, the main factors that affect the sales forecast are processed for dimensionality reduction. Secondly, the cuckoo algorithm is used to optimize the weights and thresholds of the BP neural network algorithm. At the same time, the cuckoo algorithm introduces the group information sharing mechanism of the bacterial foraging algorithm to speed up the convergence of the algorithm. Compared with the results of different prediction methods, the prediction error of this method is lower, which can provide a good scientific basis for the sales forecast of e-commerce of air conditioners.
Key words: factor analysis; cuckoo algorithm; BP neural network algorithm; sales forecast
2019年網(wǎng)購零售額達(dá)106324億元,比上年增長16.5%,網(wǎng)絡(luò)零售在促進(jìn)消費(fèi)結(jié)構(gòu)升級、拉動(dòng)內(nèi)需等方面起著越來越重要的作用,京東、蘇寧易購、天貓等電商平臺成為了推動(dòng)消費(fèi)升級的主力軍。與此同時(shí),企業(yè)運(yùn)營問題面臨著更大的挑戰(zhàn)。由于客戶在多個(gè)平臺的選擇性廣,且企業(yè)無法直接接觸客戶,特別是B2C模式更增加了訂單預(yù)測的難度。如果生產(chǎn)過多,引起庫存積壓,占用大量財(cái)務(wù)資金影響企業(yè)正常運(yùn)轉(zhuǎn),生產(chǎn)過少,缺貨狀態(tài)下只能形成越賣越差的惡性循環(huán),而且一旦預(yù)測不準(zhǔn)確,頻繁的變更訂單需求,勢必會(huì)影響采購、生產(chǎn)環(huán)節(jié)的工作安排,導(dǎo)致工廠間產(chǎn)能、物料的不均衡,因此保證訂單預(yù)測高準(zhǔn)確率和低波動(dòng)率顯得尤為重要。
人工神經(jīng)網(wǎng)絡(luò)( Artificial Neural Networks,簡寫為 ANNs ),是應(yīng)用于計(jì)算機(jī)視聽、語音分析、數(shù)字水印、圖像識別等各行各業(yè)的數(shù)學(xué)模型,具有自學(xué)習(xí)能力、較強(qiáng)的非線性擬合能力、高速尋優(yōu)能力;但也有易陷入局部最優(yōu),收斂性不強(qiáng)的缺點(diǎn)。本文以X空調(diào)公司為研究背景,運(yùn)用改進(jìn)的布谷鳥算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法中初始化時(shí)的權(quán)重和閾值,提高BP神經(jīng)網(wǎng)絡(luò)的泛化能力和收斂性,從而更加準(zhǔn)確地預(yù)測電商月度銷量和分機(jī)型銷量,降低牛鞭效應(yīng),也使工廠在淡旺季切換之際對物資、人員規(guī)劃有充足的準(zhǔn)備,達(dá)到減員提效,提高線上占有率的目的。
1 電商銷量預(yù)測的關(guān)鍵因素
通過對100名X公司電商運(yùn)營人員及日常網(wǎng)購人員的問卷調(diào)查分析,將影響空調(diào)業(yè)電商銷量的因素歸納為以下幾點(diǎn):
為避免數(shù)據(jù)冗余,通過spss軟件進(jìn)行了因子分析,將相關(guān)性較高的因素進(jìn)行聚類以降低問題的復(fù)雜性,聚類結(jié)果如表2、表3、表4所示。
從表2中可以看出,KMO為0.714,大于0.6,且Bartlett球形度檢驗(yàn)中P<0.05,說明研究數(shù)據(jù)適合進(jìn)行因子分析。從表3、表4中得出,3個(gè)因子總共提取出11個(gè)分析項(xiàng)中88.377%的信息量,因此將影響因素劃分為三個(gè)類別,如表5所示。
2 改進(jìn)布谷鳥- BP神經(jīng)網(wǎng)絡(luò)算法
2.1 改進(jìn)布谷鳥算法
Yang XS與Deb S通過模擬自然界中布谷鳥產(chǎn)卵、孵化過程,在《Cuckoo Search via Levy Flights》一文中提出了布谷鳥算法(簡稱CS)。 布谷鳥自身不筑巢、不孵卵、不育雛,而是抓住機(jī)會(huì)叼走他鳥巢中的蛋,并在巢內(nèi)產(chǎn)卵,讓其他鳥類代其孵化,雛鳥為了更好地生存會(huì)模仿宿主雛鳥的叫聲以獲得食物。布谷鳥一般在一個(gè)鳥巢中只寄生一枚蛋,當(dāng)宿主鳥發(fā)現(xiàn)外來鳥蛋后,要么舍棄該鳥巢,重新選擇位置筑巢,要么拋棄布谷鳥蛋,即鳥窩、卵蛋代表解。卵蛋能否被宿主鳥成功孵化是一個(gè)優(yōu)勝劣汰的過程,也是衡量解好壞的唯一標(biāo)準(zhǔn)。
在算法設(shè)計(jì)中,布谷鳥通過萊維飛行在D維空間中尋找最優(yōu)解,同時(shí)考慮群體間缺乏信息共享,因此引入了細(xì)菌覓食算法(Bacterial Foraging Optimization Algorithm)中的群聚策略,假設(shè)群體最優(yōu)值對各位置釋放信息素,吸引布谷鳥朝最優(yōu)解方向移動(dòng):
Xt+1,i=Xt,i+αlevy(β)+ρa(bǔ)ttractexp(-ωattract(θi-θbest)2)(1)
式中,Xt表示第t代第i個(gè)解;α表示隨機(jī)搜索范圍的步長因子,⊕表示點(diǎn)對點(diǎn)乘法。萊維飛行通常使用Mantegna算法模擬,步長s數(shù)學(xué)表達(dá)式如下:
s=u|v|1/β(2)
其中,u服從N(0,σ2),v~N(0,1),σ={Г(1+β)sinπβ2β Г1+β22β-12}1β
宿主鳥按一定概率舍棄鳥窩,采用偏好隨機(jī)游走生成新的解:
Xt+1,i=Xt,i+αsH(Pa-r)(Xj,i-Xk,i)(3)
其中,Xj,i,Xk,i是通過隨機(jī)位置變換隨機(jī)選擇的兩個(gè)不同的解,s是步長,H(v)是單位解約函數(shù),r是從均勻分布中抽取得隨機(jī)概率。
同時(shí),在CS算法中,每個(gè)解以隨機(jī)概率消失的同時(shí)也增加了淘汰最優(yōu)解的概率。本文中結(jié)合了BFOA的趨化策略,增加其局部搜索能力,并對每次趨化步驟中的平均適應(yīng)度值排序,較差的半數(shù)鳥巢以一定概率發(fā)生遷移,以降低最優(yōu)解被隨機(jī)淘汰的可能性。具體步驟如下:
Step 1.初始化種群N、最大進(jìn)化代數(shù)T、步長因子a,發(fā)現(xiàn)概率Pa、趨化步驟的步數(shù)M等,并隨機(jī)產(chǎn)生初始種群。計(jì)算所有個(gè)體的適應(yīng)度,記錄全局最優(yōu)適應(yīng)度值Gbest和全局平均適應(yīng)度值Gave。
Step 2.判斷是否達(dá)到最大迭代次數(shù)或設(shè)定精度,若終止條件不滿足, 則重復(fù)Step 3 - Step 5,否則進(jìn)行Step 6;
Step 3.通過萊維飛行更新鳥窩位置,若f(xi)
Step 4.計(jì)算趨化步驟中布谷鳥的平均適應(yīng)度值得到布谷鳥能量,并排序,對于獲取能力差的半數(shù)鳥巢,生成一個(gè)隨機(jī)概率r,并將它與固定遷移概率Pa進(jìn)行比較,若r< Pa則利用式(3)進(jìn)行隨機(jī)遷移,并返回Step 2;
Step 6. 將改進(jìn)布谷鳥算法更新后的權(quán)值、閾值作為神經(jīng)網(wǎng)絡(luò)算法中的初始值進(jìn)行訓(xùn)練,達(dá)到迭代次數(shù)后或達(dá)到精度,結(jié)束運(yùn)算,輸出預(yù)測值。
2.2 BP神經(jīng)網(wǎng)絡(luò)算法
BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)應(yīng)用于各行各業(yè),是1986年由Rumelhart和McClelland提出的概念,通過誤差反復(fù)訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型,使預(yù)測結(jié)果最接近實(shí)際結(jié)果。BP神經(jīng)網(wǎng)絡(luò)共包含三層結(jié)構(gòu):輸入層、隱藏層和輸出層,其中隱含層節(jié)點(diǎn)的選擇是影響模型性能的重要因素,增加節(jié)點(diǎn)數(shù)有助于獲得更低的誤差,但也增加了訓(xùn)練復(fù)雜性低和訓(xùn)練時(shí)間。一般BP神經(jīng)網(wǎng)絡(luò)分為兩個(gè)步驟:首先,輸入值通過前向傳播算法獲得預(yù)測值,并判斷預(yù)測值與實(shí)際值的差異是否滿足精度要求。其次,誤差在不滿足精度要求的前提下,按原路逆向傳播到各層級,各層級運(yùn)用梯度下降法更新權(quán)值和閾值,以使誤差信號最小。
本文中BP神經(jīng)網(wǎng)絡(luò)的激活函數(shù)設(shè)置為:
sigmoid(z)=1+11+e-1(4)
改進(jìn)CS算法的目標(biāo)函數(shù)和BP神經(jīng)網(wǎng)絡(luò)的損失函數(shù)設(shè)置為:
Et=1n∑ni=1(t,i-yt,i)2(5)
其中:y(x)=∑ni=1(ωixi+εi)(6)
ωi:第i個(gè)因素的權(quán)重;εi:閾值。
2.3 實(shí)例驗(yàn)證及參數(shù)選擇
本文取X公司以2010—2019年的冷凍年為例,選取2010年9月—2018年12月共100個(gè)月的數(shù)據(jù)作為訓(xùn)練樣本,為驗(yàn)證“雙十一”、“618”大促節(jié)點(diǎn)數(shù)據(jù),選取2019年1月至2019年12月全年數(shù)據(jù)作為為測試樣本。
運(yùn)用Matlab 2013軟件中進(jìn)行模型的求解其中,相關(guān)參數(shù)設(shè)置如下:CS算法中種群規(guī)模n=25,最大迭代次數(shù)t=200,步長因子α=0.2,遷移概率Pa=0.25,引力深度度ρa(bǔ)ttract=0.1,引力寬度ωattract=0.2。BP算法設(shè)計(jì)為3層網(wǎng)絡(luò)結(jié)構(gòu),輸入層n=3,輸出層m=1,隱含層P=n+m+rand(1,10)=8,預(yù)測結(jié)果如圖1和表6所示。
通過圖1可以看出,改進(jìn)CS-BP神經(jīng)網(wǎng)絡(luò)算法相比另兩種方法預(yù)測精度更高,均平方誤差達(dá)到0.52%;而CS-BP算法誤差為0.73%,傳統(tǒng)的BP算法誤差為0.89%,優(yōu)化率分別為28.76%、41.57%。因此,改進(jìn)BP-CS算法對于提高電子商務(wù)訂單的銷量預(yù)測準(zhǔn)確率具有較大實(shí)踐意義,同時(shí)也簡化了神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),加快了收斂速度。
3 結(jié)語
空調(diào)行業(yè)有明顯的淡旺季之分,尤其是相對于中小企業(yè),四、五月份會(huì)面臨巨大的材料采購、產(chǎn)能缺口壓力,準(zhǔn)確的銷量預(yù)測至關(guān)重要。本文通過因子分析歸納了影響空調(diào)行業(yè)電商預(yù)測的主要因素,同時(shí)在CS算法中結(jié)合了BFOA算法的優(yōu)勢,對BP算法中的參數(shù)進(jìn)行初步擬定。根據(jù)X公司2019年的預(yù)測結(jié)果表明,優(yōu)化后的CS-BP算法預(yù)測準(zhǔn)確率更高,具有可靠性和有效性,也可為其他公司、其他行業(yè)的預(yù)測方法提供良好的借鑒。
參考文獻(xiàn):
[1] 楊光,汪長波,黃滌,王金燕,劉海明.基于無偏灰色PSOMarkov優(yōu)化模型的加油站便利店零售銷量預(yù)測方法研究[J].數(shù)學(xué)的實(shí)踐與認(rèn)識,2019,49(20):44-52.
[2] YANG X S, DEB S. Cuckoo search via Lévy flights. Proceedings of world congress on nature and biologically inspired computing (NaBIC 2009). IEEE Publications, USA, 2009: 210-214.
[3] ROBERTO ANTONIO VZQUEZ. Training spiking neural models using cuckoo search algorithm[C]// Proceedings of the IEEE Congress on Evolutionary Computation, CEC 2011, New Orleans, LA, USA, 5-8 June, 2011. IEEE, 2011.
[4] PASSINO K M.Biomimicry of bacterial foraging for distributed optimization and control[J].IEEE Control Systems Magazine (S0272-1708), 2002, 22(3): 52-67.
[5] 焦李成. 神經(jīng)網(wǎng)絡(luò)系統(tǒng)理論[M]. 西安電子科技大學(xué)出版社, 1990.