李克文 李 萍
(中國(guó)石油大學(xué)計(jì)算機(jī)與通信工程學(xué)院 青島 266580)
長(zhǎng)期以來(lái),許多學(xué)者對(duì)預(yù)測(cè)理論進(jìn)行了廣泛深入的研究,并提出一系列預(yù)測(cè)方法,如時(shí)間序列法、人工神經(jīng)網(wǎng)絡(luò)法、支持向量機(jī)法、灰色預(yù)測(cè)法等[1~2],這些方法大多采用單變量建模和預(yù)測(cè),不能充分考慮變量之間作為整體存在時(shí)的相互影響[3],且在預(yù)測(cè)過(guò)程中需要大量可靠地預(yù)測(cè)數(shù)據(jù)作為支撐。隨著研究的深入,一些學(xué)者提出多變量灰度預(yù)測(cè)模型,也稱為GM(1,N)模型,灰色預(yù)測(cè)模型是灰色系統(tǒng)理論中最重要的組成部分之一,通過(guò)對(duì)“部分”已知信息的分析,提取有價(jià)值的信息,實(shí)現(xiàn)對(duì)數(shù)據(jù)變化規(guī)律的正確描述和有效預(yù)測(cè)[4]。
對(duì)灰度預(yù)測(cè)模型的改進(jìn)研究一直是近年的熱點(diǎn)[5~6]:通過(guò)改進(jìn)初始條件或利用智能算法獲取更為合適的背景值[7~8],從而獲取更為準(zhǔn)確的預(yù)測(cè)效果。GM(1,N)模型的結(jié)構(gòu)比單變量灰色預(yù)測(cè)模型復(fù)雜,建模過(guò)程充分考慮了相關(guān)因素對(duì)系統(tǒng)變化的影響[9~10],但GM(1,N)模型存在建模機(jī)制和模型結(jié)構(gòu)上存在不足,因此在實(shí)際應(yīng)用中常常導(dǎo)致模型誤差大于GM(1,1)模型。為了提高GM(1,N)模型的仿真和預(yù)測(cè)性能,Tien 優(yōu)化了傳統(tǒng)GM(1,N)模型的結(jié)構(gòu),在該領(lǐng)域發(fā)揮了重要作用[11];Wang等通過(guò)引入控制參數(shù)和插值系數(shù),提出了一種基于卷積積分的GMC(1,N)優(yōu)化模型[12];Zeng等提出了一種新的OGM(1,N)模型,解決了傳統(tǒng)GM(1,N)模型的建模機(jī)理、參數(shù)估計(jì)和模型結(jié)構(gòu)的缺陷問(wèn)題[13]。本文在OGM(1,N)基礎(chǔ)上,以模型還原值和實(shí)際值的誤差平方和最小化為目標(biāo),提出一種基于灰色關(guān)聯(lián)分析和PSO算法的多元變量灰度預(yù)測(cè)模型,通過(guò)灰色關(guān)聯(lián)度計(jì)算獲取與參考序列變化密切相關(guān)的自變量序列,基于PSO 算法改進(jìn)模型初始條件,在N = 1 和N >1 兩種情況下分別對(duì)模型進(jìn)行建模預(yù)測(cè)和發(fā)展系數(shù)求解優(yōu)化,降低模型范圍,從而提高了改進(jìn)模型的預(yù)測(cè)精度和適用范圍。
通過(guò)研究發(fā)現(xiàn),GM(1,N)模型存在一些嚴(yán)重的缺陷[13]:1)作為一個(gè)有N個(gè)變量和一個(gè)一階方程的灰色預(yù)測(cè)模型,當(dāng)N =1 時(shí),現(xiàn)有的GM(1,N)模型不能轉(zhuǎn)化為相應(yīng)的GM(1,1)模型,這說(shuō)明GM(1,N)模型的結(jié)構(gòu)存在一定的缺陷;2)GM(1,N)模型的最終時(shí)間響應(yīng)表達(dá)式是通過(guò)一個(gè)理想的簡(jiǎn)化過(guò)程得到的,這可能會(huì)導(dǎo)致GM(1,N)模型的不穩(wěn)定性;3)參數(shù)估計(jì)與參數(shù)應(yīng)用的錯(cuò)位是傳統(tǒng)GM(1,N)模型的第三個(gè)缺陷。針對(duì)GM(1,N)模型現(xiàn)有的建模機(jī)理、參數(shù)估計(jì)和模型結(jié)構(gòu)三個(gè)方面的嚴(yán)重缺陷,Zeng 等引入線性修正項(xiàng)h1(k-1)和灰色作用量項(xiàng)h2,提出了一種新的灰色優(yōu)化模型OGM(1,N)[13],解決了傳統(tǒng)GM(1,N)模型的三個(gè)缺陷,其建模過(guò)程如下:
其中i=1,2,…,n,k=1,2,…,p。
2)由Xi(1)生成緊鄰均值序列Z(1)={z1(1)(k)}(k=1,2,3,…,p)。
其中,背景值λ 默認(rèn)為0.5。假定X(1)具有近似指數(shù)變化規(guī)律,數(shù)列X2(1),X3(1),…,Xn(1)對(duì)X1(1)的變化率產(chǎn)生影響,則Xi(1)序列滿足下述的一階線性微分方程:
這個(gè)微分方程模型記為GM(1,N),將上式離散化,并引入線性修正項(xiàng)h1(k-1)和灰色作用量項(xiàng)h2,得到OGM(1,N)灰微分方程如下:
記式(4)的離散形式如下:
其中,k=2,3,…,p,a 為系統(tǒng)的發(fā)展系數(shù),bi為驅(qū)動(dòng)系數(shù),線性校正項(xiàng)h1(k-1)反映了因變量和獨(dú)立變量之間的線性關(guān)系;灰色作用量項(xiàng)h2表示因變量序列中的數(shù)據(jù)變化關(guān)系。要求解此微分方程,須先確定參數(shù)a、bi、h1、h2。
3)利用最小二乘法求得參數(shù)a、bi、h1、h2的值:
其中:
4)將a、bi、h1、h2的值帶入式(5)解微分方程,得其離散解為
其中:
5)對(duì)式(7)做一次累減還原運(yùn)算,得到原始序列X1(0)的灰色預(yù)測(cè)值:
本文在OGM(1,N)模型的基礎(chǔ)上,通過(guò)灰色關(guān)聯(lián)分析法評(píng)估各個(gè)因素與預(yù)測(cè)數(shù)據(jù)的關(guān)聯(lián)程度,從而挖掘出對(duì)預(yù)測(cè)數(shù)據(jù)影響較大的因素組成自變量序列,作為灰度預(yù)測(cè)模型的輸入,另外,針對(duì)OGM(1,N)建模過(guò)程中的參數(shù)估計(jì)問(wèn)題,利用PSO 算法分別在N=1和N >1兩種情況下對(duì)模型中a、bi、h1、h2值進(jìn)行求解優(yōu)化,避免直接定義背景值λ=0.5,再對(duì)a,b 值進(jìn)行求解產(chǎn)生的雙重誤差,使模型誤差最小化。
作為比較數(shù)據(jù)序列,是影響系統(tǒng)行為的因素。
2)確定每個(gè)數(shù)據(jù)序列中的最大值和最小值,針對(duì)參考數(shù)列和比較數(shù)列進(jìn)行無(wú)量綱化處理:
3)計(jì)算比較數(shù)列xi和參考數(shù)列x1在第k個(gè)指標(biāo)上的灰色關(guān)聯(lián)系數(shù):
4)計(jì)算灰色關(guān)聯(lián)度γi:
設(shè)置關(guān)聯(lián)度閾值γ0=0.6,提取{γi|γi>γ0}的特征屬性集組成新的自變量數(shù)據(jù)序列Xi'(0)={xi'(0)(1),xi'(0)(2),…,xi'(0)(p')},i=1,2,…,n,為方便后續(xù)表達(dá),將Xi('0)記為新的X(i0)。
根據(jù)變量參數(shù)N 的大小,采用粒子群算法對(duì)具體參數(shù)進(jìn)行優(yōu)化求解,最小化模型誤差。POGM(1,N)建模過(guò)程如下:
2)I.當(dāng)N = 1 時(shí),令h1=0,將OGM(1,N)模型轉(zhuǎn)換為GM(1,1)模型:
由G(k+1)-G(k)可得:
又根據(jù)GM(1,1)模型原理可得:
聯(lián)立式(16)、(19)可得,
(1)初始化一個(gè)規(guī)模為m(m ≥4)的粒子群,設(shè)定初始位置向量ai=(ai1,ai2,ai3,…,aim),h2i=(h2i1,h2i2,h2i3,…,h2im)和初始速度向量Vi=(vi1,vi2,vi3,…,vim),因?yàn)樵趯?shí)際運(yùn)用過(guò)程中a 的取值不會(huì)超過(guò)0.5[15],所以:
(2)將a,h2的值代入式(18),求得:
II.當(dāng)N >1時(shí),OGM(1,N)模型如下所示:
(1)初始化一個(gè)規(guī)模為m 的粒子群,設(shè)定初始位置向量λi=(λi1,λi2,λi3,…,λim)和初始速度向量Vi=(vi1,vi2,vi3,…,vim),每當(dāng)給定一組li,PSO 調(diào)用OGM(1,N)模型文件即可獲得一組對(duì)應(yīng)參數(shù)解:[b2,b3,…,bn,a,h1,h2]i,根據(jù)實(shí)際運(yùn)用過(guò)程[15],參數(shù)解須滿足以下條件:
(2)將a,bi,h1,h2的值代入式(7)、(8)、(9),求得
3)計(jì)算每個(gè)粒子的適應(yīng)度值,取適應(yīng)度函數(shù)為
4)比較每個(gè)粒子的適應(yīng)值fmin和其經(jīng)歷過(guò)的個(gè)體 最 優(yōu) 位 置pbest 的 適 應(yīng) 值fpbest,若fmin<fpbest則 更 新fpbest=fmin;
5)比較每個(gè)粒子的適應(yīng)值fmin與其經(jīng)歷過(guò)的全局最優(yōu)位置gbest 的適應(yīng)值fgbest,若fmin<fgbest則更新fgbest=fmin;
6)在找到這兩個(gè)極值后,根據(jù)粒子的速度、位置進(jìn)化方程來(lái)更新粒子;
7)如果滿足終止條件,則輸出解,否則返回3)繼續(xù)循環(huán)查找。
本文基于文獻(xiàn)[13]中的抗拉強(qiáng)度數(shù)據(jù)集和文獻(xiàn)[3]中的基坑監(jiān)測(cè)數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)分析,具體實(shí)驗(yàn)數(shù)據(jù)如表1、表2所示。在實(shí)驗(yàn)數(shù)據(jù)的基礎(chǔ)上,取ρ=0.05,根據(jù)3.1 節(jié)中的灰色關(guān)聯(lián)分析法分別對(duì)表1、表2 數(shù)據(jù)集的三組數(shù)據(jù)序列進(jìn)行灰色關(guān)聯(lián)度計(jì)算,計(jì)算結(jié)果如表3 所示,γ12,γ13均大于0.7(最常用的臨界值為0.6),說(shuō)明三組數(shù)據(jù)序列之間相互關(guān)聯(lián),兩個(gè)數(shù)據(jù)集均可以作為預(yù)測(cè)模型的輸入。
表1 抗拉強(qiáng)度數(shù)據(jù)集
表2 基坑監(jiān)測(cè)數(shù)據(jù)集
表3 基坑監(jiān)測(cè)數(shù)據(jù)
為了全面驗(yàn)證POGM(1,N)模型效果的有效性,本文在Matlab 平臺(tái)上進(jìn)行實(shí)驗(yàn),分別將表1、表2 數(shù)據(jù)集的前六個(gè)序列根據(jù)3.2 節(jié)中基于PSO 優(yōu)化的OGM(1,N)模型(簡(jiǎn)稱為POGM(1,N)模型)、GM(1,1)模型、GM(1,N)模型和OGM(1,N)模型進(jìn)行建模,預(yù)測(cè)下一個(gè)序列,同時(shí)刪除第一個(gè)序列,增加最新數(shù)據(jù)序列作為輸入,繼續(xù)向后進(jìn)行預(yù)測(cè),并且采用平均絕對(duì)誤差、均方誤差、平均百分比誤差作為預(yù)測(cè)結(jié)果評(píng)判標(biāo)準(zhǔn),計(jì)算過(guò)程如式(10)~(12)所示[16],預(yù)測(cè)結(jié)果對(duì)比圖如圖1、圖2所示。
圖1 各模型預(yù)測(cè)結(jié)果對(duì)比圖
圖2 各模型預(yù)測(cè)結(jié)果對(duì)比圖
表4 各模型性能對(duì)比
從圖1 可以發(fā)現(xiàn),在抗拉強(qiáng)度數(shù)據(jù)集上,GM(1,N)模型預(yù)測(cè)過(guò)程出現(xiàn)較大偏差,GM(1,1)模型除個(gè)別點(diǎn)出現(xiàn)較大偏離外,絕大多數(shù)點(diǎn)誤差相對(duì)較小,但GM(1,1)模型沒(méi)有準(zhǔn)確反映出真實(shí)數(shù)據(jù)的變化趨勢(shì),POGM(1,N)模型和OGM(1,N)模型充分考慮了數(shù)據(jù)點(diǎn)之間的變化趨勢(shì),預(yù)測(cè)結(jié)果相對(duì)穩(wěn)定。從圖2 可以發(fā)現(xiàn),在基坑監(jiān)測(cè)數(shù)據(jù)集上,傳統(tǒng)GM(1,1)模型和GM(1,N)模型的預(yù)測(cè)結(jié)果相對(duì)穩(wěn)定但是誤差較大,POGM(1,N)模型和OGM(1,N)模型預(yù)測(cè)結(jié)果更接近于真實(shí)值,絕大多數(shù)點(diǎn)相對(duì)誤差較小,預(yù)測(cè)結(jié)果更為穩(wěn)定。另外,通過(guò)表4 中各個(gè)模型在表1、表2 數(shù)據(jù)集上的預(yù)測(cè)指標(biāo)對(duì)比可以看出,本文所提方法在MAE、MSE 和MAPE 三大指標(biāo)下的性能相對(duì)于GM(1,1)模型、GM(1,N)模型有了較大提升,和OGM(1,N)模型相比,在MAE、MSE 和MAPE 指標(biāo)上分別下降了0.0464,0.0188,0.6828%和0.3356,0.6765,2.2411%。這說(shuō)明,本文所提出的POGM(1,N)模型能獲得比其他方法更好的預(yù)測(cè)效果,POGM(1,N)模型預(yù)測(cè)精度高,更能反映數(shù)據(jù)的真實(shí)變化趨勢(shì)。
本文提出了一種基于粒子群優(yōu)化算法進(jìn)行參數(shù)尋優(yōu)求解的GM(1,N)優(yōu)化模型,該模型采用灰色關(guān)聯(lián)分析法計(jì)算提取與參考序列關(guān)聯(lián)度值較高的序列,組成模型的自變量輸入序列,并在OGM(1,N)模型的預(yù)測(cè)原理上優(yōu)化模型初始條件,根據(jù)PSO 算法進(jìn)行多元變量灰度模型的參數(shù)尋優(yōu)和預(yù)測(cè)建模,借鑒滑動(dòng)窗口的思想,依次向后進(jìn)行序列預(yù)測(cè),有效提高了改進(jìn)模型的適用范圍。通過(guò)在基坑監(jiān)測(cè)數(shù)據(jù)集和抗拉強(qiáng)度數(shù)據(jù)集上的實(shí)驗(yàn),證明了改進(jìn)模型具有較高的預(yù)測(cè)精度。