劉 芳, 馮 丹, 宮雪然
(沈陽理工大學(xué) 理學(xué)院, 沈陽 110159)
我國特殊的地理氣候條件決定了洪澇災(zāi)害具有季節(jié)性和區(qū)域性的特點.洪澇災(zāi)害的發(fā)生影響了國民經(jīng)濟發(fā)展,嚴(yán)重威脅著人民生命財產(chǎn)安全.災(zāi)害發(fā)生后及時對災(zāi)情嚴(yán)重性和可轉(zhuǎn)移人數(shù)做出快速判斷是災(zāi)民安置、傷患救助與食物供給的基礎(chǔ).建立科學(xué)、合理的預(yù)測洪水災(zāi)害應(yīng)急物資需求模型對實現(xiàn)高效救援具有重要參考價值.
針對應(yīng)急物資需求預(yù)測方法,國內(nèi)外學(xué)者做了大量研究,主要集中在兩大類:一類基于數(shù)理統(tǒng)計和案例推理技術(shù)構(gòu)建預(yù)測模型;一類基于歷史數(shù)據(jù)與智能優(yōu)化算法構(gòu)建數(shù)學(xué)模型.基于數(shù)理統(tǒng)計和案例推理技術(shù)方法中,Spencer使用改進的多元時間序列模型,對災(zāi)害應(yīng)急物資需求進行預(yù)測[1];蔡玫等采用二型模糊集合表征群體意見,利用模糊群決策理論解決信息不完備情況下的應(yīng)急物資需求預(yù)測問題[2];曾波等將傳統(tǒng)灰色模型推廣為灰色異構(gòu)數(shù)據(jù)預(yù)測模型,通過灰色異構(gòu)數(shù)據(jù)“核”序列建立自然災(zāi)害應(yīng)急物資預(yù)測模型[3];詹沙磊等基于馬爾科夫理論建立了供需不平衡環(huán)境下應(yīng)急物資的分配模型,動態(tài)決策臺風(fēng)災(zāi)害中物資的需求預(yù)測[4];李沁鮮運用案例推理方法,通過相似案例建立災(zāi)害應(yīng)急物資需求模型[5].
基于歷史數(shù)據(jù)與智能優(yōu)化算法構(gòu)建數(shù)學(xué)模型方法中,錢楓林等在研究地震傷亡人數(shù)預(yù)測中采用BP神經(jīng)網(wǎng)絡(luò)方法,相比高斯擬合函數(shù)模型其預(yù)測精度大大提高[6];劉建華等提出了BP神經(jīng)網(wǎng)絡(luò)與聚類分析相結(jié)合的模式,對城市水災(zāi)災(zāi)情進行預(yù)測[7];程瓊瓊通過分析對地震災(zāi)情影響因素與災(zāi)后人員傷亡人數(shù)的關(guān)系,采用GA優(yōu)化BP神經(jīng)網(wǎng)絡(luò)方法建立了地震應(yīng)急物資動態(tài)預(yù)測模型[8];亢麗君采用粒子群算法對神經(jīng)網(wǎng)絡(luò)權(quán)值進行優(yōu)化,實現(xiàn)應(yīng)急物資需求預(yù)測[9];Mohammadi等創(chuàng)建了基于遺傳算法和改進自適應(yīng)粒子群算法的RBFNs方法,用于預(yù)測地震后應(yīng)急物資需求量[10].
在物資需求預(yù)測研究方法中,基于數(shù)理統(tǒng)計方法和案例推理技術(shù)中多要引用專家經(jīng)驗,模型主觀性較強.基于智能優(yōu)化算法的物資需求模型,建立了數(shù)據(jù)到數(shù)據(jù)的非線性映射,能夠客觀描述受災(zāi)情況與物資需求的關(guān)系.但由于神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值選取具有隨機性,導(dǎo)致預(yù)測結(jié)果波動性較大.采用GA和PSO等智能模型優(yōu)化了網(wǎng)絡(luò)權(quán)值與閾值的選取策略,有效提高了預(yù)測的穩(wěn)定性,但算法收斂速度有待提高.針對上述問題,本文建立了一種新的改進蟻群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法,基于洪澇災(zāi)害中表征受災(zāi)情況的8項主要指標(biāo),預(yù)測受災(zāi)人口轉(zhuǎn)移數(shù)量.綜合庫存管理知識間接預(yù)測洪澇災(zāi)害中主要應(yīng)急物資需求量.改進蟻群算法的使用,加快了網(wǎng)絡(luò)的收斂速度,通過引進后代蟻群貢獻因子,增加了蟻群搜索的多樣性,進一步優(yōu)化了BP神經(jīng)網(wǎng)絡(luò)權(quán)值與閾值的選擇策略,提升了算法預(yù)測的穩(wěn)定性.
1986年,Rumelhart和McClelland等科學(xué)家通過模擬人腦皮層對信息的反饋機制,創(chuàng)建了一種多層前饋網(wǎng)絡(luò)算法——BP神經(jīng)網(wǎng)絡(luò).三層網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示.BP算法通過信息正向傳遞與誤差反向傳播,不斷更新網(wǎng)絡(luò)的權(quán)值和閾值,由正反兩個過程對網(wǎng)絡(luò)進行多次訓(xùn)練,直到滿足最小誤差為止.BP網(wǎng)絡(luò)均方誤差函數(shù)表達式為
(1)
圖1 BP網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)Fig.1 Topological structure of BP network
蟻群算法是由Marco Dorigot通過對螞蟻覓食行為的模擬提出的一種啟發(fā)式群智能全局優(yōu)化算法.個體螞蟻在探尋食物的路徑上殘留一種稱為信息素的分泌物,蟻群通過此種物質(zhì)濃度的累積量判別食物與巢穴之間的路徑長度,從而獲得最短路徑.螞蟻擇路策略表達式為
(2)
τi(t+1)=(1-ρ)τi(t)+Δτ(t)
(3)
Δτ(t)=Q/Ld
(4)
式中:τi為第i條路徑上的信息素濃度;ρ為信息素?fù)]發(fā)系數(shù);Q為信息素增量強度;Ld為螞蟻d在本次循環(huán)中所走路徑總長度;Δτ(t)為從第t次迭代到第t+1次迭代路徑擇優(yōu)過程中信息素的增加量.螞蟻d在N條待選路徑中依據(jù)式(2)獲得的概率最大值選擇下一步的覓食路徑.在第t次迭代路徑選擇中,蟻群中所有螞蟻選擇一條完整路徑之后,對經(jīng)過路徑上的信息素濃度按照式(3)規(guī)則進行更新.由于初始狀態(tài)各條路徑上信息素是相同的,故初次迭代時,螞蟻以相同概率隨機選擇初始覓食路徑.當(dāng)蟻群在進行多次擇優(yōu)路徑迭代后,所有螞蟻選擇相同路徑或達到最大迭代次數(shù),即獲得全局最優(yōu)解,該算法結(jié)束.
在經(jīng)典蟻群算法中,信息素?fù)]發(fā)系數(shù)在其迭代過程中不變.信息素?fù)]發(fā)系數(shù)的不變性導(dǎo)致在初始迭代過程中沒有被隨機選擇到的路徑上的信息素逐漸消失,進一步降低了這些路徑被選擇的可能性.同時,非最優(yōu)路徑上的信息素不斷積累,促使這些路徑被選擇的可能性增大,算法易陷入局部最優(yōu).本文提出了后代蟻群貢獻因子φ(t),改進了信息素更新策略,其表達式為
τi(t+1)=(1-ρ)φ(t)τi(t)+Δτ(t)
(5)
φ(t)=exp(-t/M)
(6)
式中:φ(t)為一個單調(diào)遞減的指數(shù)函數(shù),即t值越大,φ(t)值越??;M為一個大于0的常數(shù),表示后代蟻群信息素的貢獻能力,M值越大,殘留信息素濃度越低,后代蟻群貢獻能力越弱.圖2為貢獻因子函數(shù)圖像.隨著螞蟻貢獻因子的引入,信息素的均勻揮發(fā)得到改善.信息素?fù)]發(fā)濃度以指數(shù)形式增長,降低了后代螞蟻信息素濃度的貢獻.與此同時,每次循環(huán)中在最短路徑上螞蟻走的路徑總長度最短,單次循環(huán)信息素濃度增加量最大.這種雙向的信息素調(diào)節(jié)為最優(yōu)路徑上信息素濃度累積達到最大值奠定了基礎(chǔ),提高了螞蟻選擇最優(yōu)路徑的可能性,增加了蟻群全局搜索的隨機性和多樣性.
BP神經(jīng)網(wǎng)絡(luò)初始權(quán)值和閾值的隨機性是導(dǎo)致預(yù)測結(jié)果不穩(wěn)定的主要原因.采用IACO算法獲得的全局最優(yōu)解作為BP網(wǎng)絡(luò)的初始權(quán)值和閾值,既減少了神經(jīng)網(wǎng)絡(luò)對權(quán)值和閾值的修正次數(shù),又避免了初始權(quán)值的隨機性,有效提高了BP神經(jīng)網(wǎng)絡(luò)預(yù)測的精度和穩(wěn)定性.算法具體過程如下:
圖2 貢獻因子函數(shù)圖像Fig.2 Image of contributing factor function
1) 對訓(xùn)練樣本數(shù)據(jù)集和測試樣本數(shù)據(jù)集進行歸一化處理,即
(7)
式中,xmax和xmin分別為訓(xùn)練樣本數(shù)據(jù)中的最大值與最小值.
2) 建立n×m×l三層網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),確定n、m、l取值.
3) 初始化蟻群參數(shù).確定螞蟻數(shù)量C、初始信息素濃度τ0、信息素?fù)]發(fā)系數(shù)ρ、信息素增量強度Q、后代蟻群貢獻力值M、最大迭代次數(shù)qmax、神經(jīng)網(wǎng)絡(luò)待優(yōu)化參數(shù)維度和每個參數(shù)的取值個數(shù)等.
4) 啟動螞蟻,每只螞蟻根據(jù)式(2)~(6)計算信息素濃度,更新信息素.
5) 重復(fù)步驟4),直到所有螞蟻都選擇同一條路徑或者達到最大迭代次數(shù)為止,轉(zhuǎn)到步驟6).
7) 將測試數(shù)據(jù)進行反歸一化,還原測試數(shù)據(jù)形態(tài),其表達式為
(8)
本文建立了基于IACO-BP算法的洪澇災(zāi)害轉(zhuǎn)移人數(shù)預(yù)測模型.選取8項洪澇災(zāi)害指標(biāo):受災(zāi)人口、最大降雨量、洪水等級、降雨等級、受災(zāi)范圍、房屋倒塌數(shù)、降雨時長和預(yù)報水平作為網(wǎng)絡(luò)輸入,選取轉(zhuǎn)移人數(shù)作為網(wǎng)絡(luò)輸出,對災(zāi)害中需要轉(zhuǎn)移的人數(shù)進行準(zhǔn)確預(yù)測.通過與BP、PSO-BP災(zāi)害轉(zhuǎn)移人數(shù)預(yù)測模型進行對比,驗證模型的有效性.
本文實驗數(shù)據(jù)來源于國家水利部發(fā)布的2013~2016《中國水旱災(zāi)害公報》和歷年新聞報道,對數(shù)據(jù)中的降雨量、洪水規(guī)模、預(yù)報水平進行了相應(yīng)的等級劃分.樣本數(shù)據(jù)中的受災(zāi)范圍為1~4,分別表示省、市、縣及臺風(fēng)區(qū)域所對應(yīng)的影響,樣本集如表1所示.
表1 樣本集Tab.1 Set of samples
表2 隱含層節(jié)點個數(shù)實驗結(jié)果Tab.2 Experimental results of number of hidden layer nodes
神經(jīng)網(wǎng)絡(luò)最大訓(xùn)練次數(shù)設(shè)為20 000次,學(xué)習(xí)速率設(shè)為0.1,期望誤差設(shè)置為0.001.在改進蟻群算法中,改進蟻群待優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值參數(shù)維度為111,每個參數(shù)值在[-1,1]中隨機取20個數(shù)值,螞蟻數(shù)量為80,信息素初始值為1,信息素?fù)]發(fā)系數(shù)取0.1,信息素增量強度設(shè)為1,后代螞蟻信息素的貢獻值為50,蟻群最大迭代次數(shù)為800.
為了驗證方法的有效性,采用相同的訓(xùn)練樣本集和測試樣本集對BP、PSO-BP和IACO-BP算法分別進行10次仿真實驗驗證,從網(wǎng)絡(luò)的收斂速度和預(yù)測精度雙向?qū)Ρ人惴ǖ膬?yōu)劣,結(jié)果如表3所示.
表3 模型預(yù)測精度對比Tab.3 Comparison of prediction accuracy of various models
由表3可知,基于IACO-BP算法的災(zāi)難人口轉(zhuǎn)移預(yù)測模型在10次實驗的均方誤差MSE平均值為0.185 02,平均絕對誤差MAE平均值為0.326 44,誤差平方和SSE平均值為2.970 17,均顯著小于BP算法和PSO-BP算法對應(yīng)的各個統(tǒng)計量取值.圖3為MSE對比圖.IACO-BP算法獲得的災(zāi)難人口轉(zhuǎn)移人數(shù)預(yù)測值的均方誤差分別比BP和PSO-BP算法獲得的均方誤差小93.62%和90.91%.IACO-BP算法獲得的預(yù)測值平均絕對誤差分別比BP和PSO-BP算法獲得的平均絕對誤差小82.61%和52.69%.IACO-BP算法獲得的預(yù)測值均方離差平方和分別比BP和PSO-BP算法獲得的均方離差平方和小93.62%和90.80%.實驗結(jié)果表明,IACO-BP算法顯著提高了受災(zāi)人口轉(zhuǎn)移人數(shù)的預(yù)測精度.
圖3 MSE對比圖Fig.3 Comparison graph of MSE
由圖3可知,IACO-BP算法在三種算法中波動最小,最穩(wěn)定.在網(wǎng)絡(luò)學(xué)習(xí)效率對比實驗中,BP算法迭代次數(shù)為16 618次,運行時間33 s;PSO-BP算法迭代次數(shù)為4 986次,運行時間10 s;IACO-BP算法迭代次數(shù)為11次,運行時間3 s.結(jié)果表明,IACO-BP網(wǎng)絡(luò)運行時間明顯縮短,收斂速度顯著提升.
洪澇災(zāi)害發(fā)生后,需要根據(jù)災(zāi)區(qū)受災(zāi)轉(zhuǎn)移人員數(shù)量,考慮供應(yīng)物資的提前期,準(zhǔn)確預(yù)測災(zāi)區(qū)物資需求量.本文引用商業(yè)物流中安全庫存理論,利用IACO-BP算法預(yù)測洪澇災(zāi)害發(fā)生后的轉(zhuǎn)移人數(shù)與生活用品、非消耗救災(zāi)物品和醫(yī)用藥品之間的關(guān)系,建立洪澇災(zāi)害應(yīng)急物資需求預(yù)測模型,間接對洪水災(zāi)害中的應(yīng)急物資需求進行預(yù)測.
根據(jù)提前期條件下安全庫存理論,建立洪澇災(zāi)害應(yīng)急物資需求模型,即
(9)
(10)
(11)
本文采用2017年吉林省永吉縣暴雨災(zāi)害數(shù)據(jù)為實驗數(shù)據(jù),進行應(yīng)急物資需求預(yù)測.該地洪水災(zāi)害預(yù)測指標(biāo)如表4所示.
表4 災(zāi)害預(yù)測指標(biāo)Tab.4 Prediction indicators of disasters
表5 預(yù)測結(jié)果Tab.5 Prediction results
本文提出了改進蟻群優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法,基于洪澇災(zāi)害中反映受災(zāi)程度的8個主要因素,對洪澇災(zāi)害轉(zhuǎn)移人數(shù)進行預(yù)測,根據(jù)轉(zhuǎn)移人數(shù)與物資需求量之間的關(guān)系,建立應(yīng)急物資需求量預(yù)測模型,應(yīng)用于洪澇災(zāi)害物資需求測試.結(jié)果表明:基于IACO-BP神經(jīng)網(wǎng)絡(luò)算法有效解決了BP網(wǎng)絡(luò)易陷入局部極小值的問題,與BP、PSO-BP網(wǎng)絡(luò)算法相比,迭代次數(shù)和運行時間明顯減少,預(yù)測精度和穩(wěn)定性顯著提高.