張佳琦, 顧幸生
( 華東理工大學能源化工過程智能制造教育部重點實驗室,上海 200237)
鋅錠是生產鍍鋅板的主要原料之一,廣泛用于汽車、建筑、船舶、輕工等行業(yè)。鋅錠的消耗不僅與合同訂單相關,而且與目標產能和產品結構等相關。由于鋅層控制精度低,再加上生產中不可避免的鋅渣,鋅錠消耗波動較大,導致煉鋼廠的鋅錠需求量浮動。在供應鏈的信息傳遞過程中,需求預測的不準確性會被逐漸放大,勢必對物料采購計劃和庫存管理造成影響,因此準確的鋅錠需求預測能指導鋼鐵企業(yè)進行物料采購優(yōu)化,做出正確的生產經營決策。
物料需求預測往往受合同訂單、銷售計劃、生產能力等多重因素影響,呈現出樣本量小且變化范圍大的特點,其非平穩(wěn)性和非線性使需求預測問題的難度增大。為提高物料需求預測的精確度,使得需求預測行之有效,學者們進行了大量研究,采用的建模方法主要分為時間序列預測、機器學習預測和混合模型預測。文獻[1]構建了灰色理論與指數平滑的需求預測綜合模型對汽車制造業(yè)的車型需求量進行了預測。文獻[2]運用灰色關聯分析和支持向量機回歸相結合的方法對備件庫存消耗進行預測。文獻[3]運用粗糙集和熵權法,改進了粒子群優(yōu)化的搜索方式和最小二乘支持向量機的加權方式,建立了基于粗糙集和熵權以及改進支持向量機的組合預測模型,用于導彈備件消耗預測。文獻[4]針對非平穩(wěn)、非線性的企業(yè)實際物料需求時間序列,提出了基于經驗模態(tài)分解及粒子群算法優(yōu)化的最小二乘支持向量機回歸的物料需求組合預測模型。文獻[5]基于泊松分布建立物料需求時間模型,對時間序列進行相空間重構后,利用遺傳算法優(yōu)化BP神經網絡,進行汽車物料預測。
基于統(tǒng)計學理論建立的支持向量機回歸(SVR)模型在處理非線性、高維問題時具有較好的魯棒性和泛化能力,目前已被廣泛應用于小樣本回歸,如金融領域預測、交通流量預測和電力負荷預測等[6-8]。在SVR模型中,合理設置懲罰因子、核函數參數是提升模型預測能力的關鍵所在?,F階段常用的參數選擇方法主要有3種:(1)試湊法,其對樣本數據質量和使用者的經驗有較大的依賴性;(2)網格搜索法(Grid Search, GS)[9],其將待搜索參數在給定的空間范圍內劃分成網格,通過遍歷網格中所有的點來尋優(yōu),該方法實現簡單但較為費時且尋優(yōu)能力有限,容易錯失全局最優(yōu)解;(3)智能算法,包括粒子群優(yōu)化(PSO)算法[10]、遺傳(GA)算法[11]、人工蜂群(ABC)算法[12]、布谷鳥搜索(CS)算法[13]。
灰狼優(yōu)化[14](Grey Wolf Optimization,GWO)算法是一種受狼群狩獵啟發(fā)的群智能優(yōu)化算法,具有參數少、易實現的特點,比PSO、GA、DE等算法穩(wěn)定性更強,收斂速度更快,在解決復雜優(yōu)化問題時表現出了良好的性能,如特征選擇[15]、神經網絡優(yōu)化[16]、路徑規(guī)劃[17]、流水車間調度問題[18]等。但GWO算法同樣存在易陷入搜索停滯狀態(tài)的缺陷,對此國內外已有學者展開了研究。文獻[19]將動態(tài)進化種群融入GWO以提高GWO的局部探索能力;文獻[20]提出了一種基于Powell局部優(yōu)化方法的擴展灰狼算法用于數據聚類;文獻[21]改進了收斂因子策略并引入動態(tài)權重策略來優(yōu)化灰狼算法的性能;文獻[22]結合差分進化和灰狼算法的優(yōu)勢,提出了一種混合算法用于三維芯片測試,進一步平衡算法的勘探和開采能力;文獻[23]提出了一種基于混沌原理和精英反向學習策略的混合灰狼優(yōu)化算法,用于解決高維函數優(yōu)化問題;文獻[24]嵌入一種最優(yōu)最差反向學習策略和一種動態(tài)隨機差分變異算子來改進灰狼優(yōu)化算法用于提升聚類優(yōu)化性能;文獻[25]提出了灰狼優(yōu)化與蝗蟲優(yōu)化的混合算法以解決文本挖掘問題。
針對傳統(tǒng)灰狼算法收斂快、易早熟的問題,本文在灰狼算法基礎上引入 Tent 混沌序列初始化種群,采用控制參數的自適應調整策略,并融合差分進化思想,提出了改進的灰狼優(yōu)化算法(IGWO)進行SVR參數優(yōu)化(IGWO-SVR)。以某鋼廠某機組的鋅錠生產實際數據為例,建立IGWO-SVR鋅耗預測模型,以提高鋅錠需求預測的效率和精度。
支持向量機(SVM)[26-27]是一種建立于統(tǒng)計學習理論基礎上的新型數據挖掘方法,在高維、非線性等問題中有著良好的表現。SVR是SVM的衍生模型,其基本思想是用一個非線性變換將原始樣本數據映射到高維空間再進行線性回歸求解,旨在尋找一個最優(yōu)超平面,使得所有樣本離該最優(yōu)超平面的距離最小。選擇稀疏性好、泛化能力強的 ε -支持向量機回歸作為損失函數,當樣本點落在超出允許的偏差范圍ε 時,則計算損失。
其中,w、b分別為超平面的法向量和截距。因為可能存在估計誤差,不是所有的點都能落在 ε 間隔帶內,因此引入松弛變量 (ξ,ξ?) ,這樣上述問題就轉化為優(yōu)化問題,此時目標函數和約束條件可以表示為
式中:C為懲罰系數,它可以調節(jié)權重以平衡線性擬合的精準度; ε 為不敏感參數。引入拉格朗日乘子,利用對偶變換和非線性變換將目標函數轉化為
式中,k(xi,xj)=〈?(xi),?(xj)〉 為核函數。
核函數的選取會將樣本映射到不同的特征空間,直接影響到預測模型的預測效果,本文選用偏差較小、學習性能較好的高斯核函數:
式中, σ 為核函數的寬度參數。
灰狼優(yōu)化算法是一種新的群智能優(yōu)化算法,啟發(fā)于灰狼種群的社會等級和狩獵行為。該算法模擬灰狼于自然界中分工、追捕和撲食獵物的行為,來獲取待優(yōu)化問題的最優(yōu)解。狼群狩獵過程描述如下:
(1)社會等級分層?;依?,擅奔跑,喜群居,群體內部遵守嚴格的社群等級制度。按照等級制度可將狼劃分為4個等級,從高到低分別是α、β、δ和ω。計算每個灰狼個體的適應度,將適應度最好的3匹灰狼依次標記為α、β、δ,剩下的灰狼標記為ω。由α、β、δ發(fā)動追捕,ω執(zhí)行獵物跟蹤圍剿,獵物的位置對應于優(yōu)化問題的全局最優(yōu)解。
(2)包圍獵物?;依撬阉鳙C物時會逐漸靠近再包圍,首先灰狼個體會確定與獵物之間的距離
式中:t表示當前迭代次數;Xp(t) 表示獵物的位置向量;X(t) 表示灰狼的位置向量;C為系數向量;r1為取值在[0,1]之間的隨機向量;D表示狼與獵物的距離。隨后狼群要根據獵物方位對自己的位置進行更新:
式中:A為系數向量;r2為取值在[0,1]之間的隨機向量;收斂因子a隨著迭代次數由2線性遞減至0。
(3)狩獵。當灰狼判斷出獵物所在的位置時,追捕行動將由頭狼α帶領β狼和δ狼發(fā)動。在狼群中,α、β、δ能力最強,最靠近獵物,利用三者的位置關系來判斷獵物所在方位,引導狼群向獵物位置進擊,經過多次的定位和挪動,最終捕獲獵物。位置更新的過程如下:
其中:X(t+1) 為更新后的灰狼個體位置。ω狼在3匹頭狼的引導下向獵物位置方向移動。
傳統(tǒng)GWO算法解決優(yōu)化問題時往往基于隨機性產生初始種群,這使得初始種群分布不均,導致尋優(yōu)速度降低。而混沌運動具備隨機性、規(guī)律性和遍歷性的特性,利用這些優(yōu)點可以產生較好的多樣性初始種群,改善全局搜索能力。現有的混沌映射有Tent 映射、Logistic映射等,不同的混沌映射對函數優(yōu)化性能有不同的影響。Logistic映射是目前使用較多的混沌映射,但該映射在[0, 0.1]和[0.9, 1]兩個區(qū)間內的高分布概率會影響優(yōu)化算法的收斂速度。文獻[28]指出Tent映射遍歷均勻性強于Logistic 映射,使得初始值較均勻地分布于[0, 1]之間,并經過嚴謹的數學推理,證明了Tent映射可以作為產生優(yōu)化算法的混沌序列。
Tent 映射表達式如下:
式中:xt為第t序列值;u為混沌參數。當u=0.5時,所產生的序列均勻分布,其對不同的參數的變化不敏感,有著近似一致的分布密度,這種最典型的Tent映射表示如下:
基于Tent映射的特性,為避免迭代落入小周期循環(huán),在可行域中產生Tent混沌序列的具體步驟描述如下:
(1) 隨機產生初值x0在[0, 1]之間(避免x0落入小周期(0, 2, 0, 4, 0.6, 0.8)),記入標志組z,z(1)=x0,i=j=1;
(2) 按式(14)進行迭代,迭代i自增1,產生一個x序列;
(3) 若達到最大迭代次數,則跳轉到步驟(5);否則,若xi={0,0.25,0.5,0.75} 或xi=xi?k,k={0,1,2,3,4} ,(即x落入不動點或周期小循環(huán)),則轉向步驟(4),否則回到步驟(2);
(4) 按x(i)=z(j+1)=z(j)+ε 改變迭代值,其中ε 為隨機數,j=j+1 ,返回步驟(2);
(5) 運行終止,保存x序列。
GWO算法的實現主要在于獵物定位和狼群移動,灰狼個體的位置更新受參數A影響。當 |A|>1時,狼群擴大搜索范圍,進行全局搜索,以找到更優(yōu)候選解;當 |A|<1 時,狼群縮小搜索范圍,于局部區(qū)域進行精細搜索。A值又隨收斂因子a而變化,即控制參數a能協(xié)調GWO算法的全局和局部搜索能力。文獻[29]提出了非線性變化收斂因子,并通過測試函數優(yōu)化證實控制參數非線性變化策略比線性策略搜索效果更佳。本文引入了一種隨迭代次數增加而非線性變化的收斂因子a,公式如下:
式中:T為當前迭代次數;Tmax為最大迭代次數。
該非線性(Improved)收斂因子與標準(Original)灰狼算法中的線性收斂因子的動態(tài)變化曲線如圖1所示。
圖1 收斂因子變化曲線Fig. 1 Change curves of convergence factors
由圖1可以看出,含非線性變化的收斂因子a在算法進化初期遞減速度慢,探索更優(yōu)解,避免陷入局部最優(yōu),從而增強算法的全局勘探能力;在算法進化后期, 遞減速度快,加快尋優(yōu)速度,從而改善算法的局部搜索能力。
差分進化算法作為一種模擬生物進化機制的全局搜索算法,通過變異、交叉和選擇使種群不斷地從低級向高級進化,受此思想影響,將差分進化思想融入GWO算法中,以彌補 GWO 算法易陷入局部極值的不足。
為保證種群競爭力,本文選取灰狼β和δ個體作為進化種群的父代,求其差分矢量,進行動態(tài)縮放因子后再與灰狼α進行合成,構建基于差分進化策略的GWO算法的變異因子。該變異因子的函數表達式為
式中:W為動態(tài)變化的縮放因子,其取值范圍為[0,2]。
式中:CR表示交叉概率常數;rand(j)表示在[0,1]內服從均勻分布的隨機數;rand(i)表示隨機的維度,可以保證狼群個體矢量最少一維變量來自變異矢量。
狼群中的個體之間通過競爭會產生新一代個體,經過變異與交叉操作而產生的中間個體與原個體進行競爭,選擇適應度好的個體作為下一代。
為了驗證改進灰狼算法的性能,本文選取4個Benchmark基準函數對算法進行尋優(yōu)測試,充分考察算法的收斂速度和尋優(yōu)精度?;鶞蕼y試函數如表1所示,其中Sphere和Rosenbrock為單峰測試函數,Ackley和Rastrigin為多峰測試函數。
表1 基準測試函數Table 1 Benchmark test functions
各算法參數設置如下:PSO算法粒子數n= 30,學習因子c1=1.5,c2=1.5,慣性權重w= 0.8;ABC算法蜂群總數n= 30, 跟隨蜂和引領蜂數目分別為15;GWO和IGWO算法狼群規(guī)模均取30,交叉概率因子CR取0.4。算法在python3.7環(huán)境下運行,測試函數維數均取30,最大迭代次數為500。對每個測試函數獨立運行30次,其優(yōu)化結果如表2所示,其中Best、Ave、Worst分別為運行30次的適應度函數值的最優(yōu)值、平均值、最差值,Sd為標準差。
表2 基準測試函數優(yōu)化結果對比Table 2 Comparison of optimization results of benchmark test functions
由表2可知,對于Ackley函數,IGWO算法能跳出局部最優(yōu),使尋優(yōu)值無限趨向于0;特別是對于多峰二次函數Rastrigin, IGWO 算法達到了理論最優(yōu)值,說明IGWO算法提高了測試函數的尋優(yōu)精度且具有克服局部最優(yōu)的能力。對于Sphere、Ackley、Rastrigin函數,IGWO算法相比PSO、ABC、GWO算法得到的平均值和標準差都最為理想,這表明IGWO算法具備較好的穩(wěn)定性和魯棒性。
圖2所示為搜索過程中各種算法在測試函數上的收斂曲線??梢钥闯鲈谙嗤牡螖迪?,IGWO和GWO算法相比于PSO和ABC算法,收斂速度快且搜索精度高。在搜索初期,IGWO和GWO算法的進化速度相當,但隨著迭代次數的增加,GWO算法達到尋優(yōu)停滯狀態(tài),而IGWO算法在多峰函數上的尋優(yōu)效果更為理想。綜上分析,IGWO算法具有較強的全局勘探能力和局部開發(fā)能力,在收斂速度和優(yōu)化精度上均有明顯的提高,同時還保持著較好的有效性和魯棒性。
圖2 PSO、ABC、GWO和IGWO在測試函數上的收斂曲線Fig. 2 Convergence curves of PSO, ABC, GWO and IGWO on the test functions
支持向量機回歸的參數選取對模型的預測精度有著關鍵性的影響,其中有兩個重要參數:懲罰系數C和徑向基核函數參數 γ ,目前參數取值多是通過經驗、試湊或是網格搜索。本文采用IGWO算法對SVR的C和 γ 進行尋優(yōu)(IGWO-SVR),并以優(yōu)化后的參數建立回歸預測模型。IGWO-SVR算法流程圖如圖3所示。建模的具體實施步驟如下:
圖3 IGWO-SVR算法流程圖Fig. 3 Flow chart of IGWO-SVR algorithm
(1)數據預處理。對樣本數據進行歸一化,使得原始樣本特征映射到[0,1]區(qū)間。
(2)參數尋優(yōu):
(a)設定相關參數,設置種群規(guī)模N、最大迭代次數T以及C和 γ 尋優(yōu)范圍。
(b)初始化狼群,根據式(14)Tent混沌序列的具體生成步驟,利用Tent映射產生灰狼個體 {Xi,i=1,2,···,N},每只灰狼Xi對應的位置向量Pi由C和γ組成。
(c)計算適應度,根據位置向量Pi所包含的參數在訓練集下進行SVR模型訓練,以均方誤差為適應度函數,計算灰狼個體的適應度值 {fi,i=1,2,···,N} ,按照適應度值大小對狼群分級,選出適應度最好的灰狼標記為α、β、δ。
(d)更新灰狼位置,根據式(10)、(11)和(12)對剩余的ω狼進行位置更新。
(e)差分進化操作,根據式(16)由狼群父代個體求差分變量,構建變異因子,再根據式(17)經交叉和選擇后,擇更優(yōu)灰狼個體進入下一代種群。
(f)判斷迭代次數是否超過最大迭代次數,若是,搜索過程結束,輸出α狼的位置,即最優(yōu)參數C和 γ ;若否,則返回步驟(c)繼續(xù)參數優(yōu)化。
(3)模型預測。提取最優(yōu)參數構建SVR預測模型進行訓練,并利用該模型對測試樣本進行預測,經反歸一化后輸出結果。
實驗樣本來自某鋼廠的部分歷史生產數據,經過數據預處理后,最終保留808個數據樣本,隨機選取80%作為訓練樣本,剩余20%作為測試樣本。以分鍍層類型的合同重量和目標鋅耗等4個特征量作為輸入,實際鋅錠總耗量作為輸出,建立IGWOSVR鋅耗預測模型。為驗證建模方法的有效性和優(yōu)越性,分別采用PSO、GWO和IGWO對SVR進行參數優(yōu)化。在仿真實驗中,優(yōu)化算法的種群規(guī)模均設為20,最大迭代次數均設為50,C和γ的上下限設置為0.01~100。各算法在訓練集下進行SVR模型訓練,以均方誤差為適應度函數,進行交叉驗證來優(yōu)化參數,得到的最優(yōu)參數如表3所示,適應度下降曲線如圖4所示。
表3 各算法的參數尋優(yōu)結果Table 3 Parameters optimization results of each algorithms
圖4 IGWO-SVR、PSO-SVR、GWO-SVR參數優(yōu)化過程的適應度下降曲線Fig. 4 Fitness decline curves of IGWO-SVR, PSO-SVR, GWOSVR parameter optimization process
采用尋優(yōu)后參數分別構建PSO-SVR、GWOSVR及IGWO-SVR的鋅耗預測模型,并利用訓練完的模型進行預測。為了評價模型預測效果,選用均方誤差(MSE)、平均絕對百分誤差(MAPE)和決定性系數(R2)作為評價指標,公式如下:
其中:yi、、分別表示數據原始值、預測數據均值和原始數據均值。表4中示出了SVR、PSO-SVR、GWO-SVR、IGWO-SVR模型的性能對比結果。
表4 SVR、PSO-SVR、GWO-SVR、IGWO-SVR模型性能對比結果Table 4 Performance comparison results of SVR, PSO-SVR,GWO-SVR and IGWO-SVR models
圖5示出了IGWO-SVR模型鋅耗預測值與實際值的對比結果。由圖5和表4可以看出,IGWOSVR鋅耗模型預測曲線與實際曲線的貼合程度較高,模型的R2達到了0.8743,均高于另外3種預測模型,且其均方差和平均絕對百分誤差也均為最小,進一步說明IGWO-SVR模型具有更高的預測精度。
圖5 IGWO-SVR鋅耗模型預測結果Fig. 5 Prediction results of IGWO-SVR zinc consumption model
本文提出了一種基于改進灰狼算法優(yōu)化的支持向量回歸的建模預測方法,引入混沌Tent映射以增強初始種群的多樣性和分布均勻性,采用非線性收斂因子并融合差分進化算法以平衡算法的全局和局部搜索能力。為驗證改進灰狼優(yōu)化算法的有效性,采用典型基準測試函數進行仿真實驗,實驗結果表明,其綜合性能優(yōu)越,尋優(yōu)精度高,且具有較好的穩(wěn)定性和魯棒性。采用改進的灰狼算法對SVR進行參數優(yōu)化,并根據最優(yōu)參數構建鋅耗預測模型,有效提高了鋅耗預測精度,為解決高維、非線性的工業(yè)問題提供了新的解決途徑。下一步工作考慮將IGWO算法應用于求解更復雜的組合優(yōu)化問題,并結合其他智能優(yōu)化算法,提出性能更好的全局優(yōu)化算法。