孔新海,馬 新
(1.廣安職業(yè)技術(shù)學(xué)院 智能制造與能源工程學(xué)院,四川 廣安 638000;2.西南科技大學(xué) 理學(xué)院,四川 綿陽 621010)
灰色系統(tǒng)理論自被提出以來,經(jīng)過幾十年的快速發(fā)展,已被廣泛地應(yīng)用于經(jīng)濟(jì)社會(huì)管理、工業(yè)企業(yè)生產(chǎn)等各個(gè)領(lǐng)域。它能夠處理小樣本貧信息問題,是處理這類問題方法體系,特別GM(1,1)模型是灰色系統(tǒng)理論中非常簡潔且應(yīng)用廣泛的一類預(yù)測(cè)模型[1]。在應(yīng)用過程中,為了提高模型精度,很多學(xué)者提出了優(yōu)選初始值、優(yōu)化灰導(dǎo)數(shù)或背景值等一系列的改進(jìn)方法[2,3];而針對(duì)建模序列的特點(diǎn),提出了適合單調(diào)遞增序列、單調(diào)遞減序列或非等間距序列的GM(1,1)建模方法及其優(yōu)化措施[4-9]。對(duì)于具有凹凸性的序列,文獻(xiàn)[10]提出了用軸對(duì)稱手段來改變?cè)夹蛄邪纪剐赃M(jìn)行GM(1,1)建模的一種方法。本文針對(duì)原始序列是凸的情況,首先分析了GM(1,1)模型預(yù)測(cè)序列的特點(diǎn),其次提出了改變序列凹凸性的一種新方法,即以原始序列首尾兩點(diǎn)連線為對(duì)稱軸,把凸序列轉(zhuǎn)化為對(duì)稱序列(凹序列),再基于對(duì)稱序列建立非等間距GM(1,1)模型,從而對(duì)原序列進(jìn)行預(yù)測(cè)。
定義1:設(shè)x(0)={x(0)(1),x(0)(2),…,x(0)(n)}為任意一組正序列,對(duì)任意k(2≤k≤n-1),若滿足 Δ(0)(k)≤ Δ(0)(k-1),則稱x(0)為凸序列;若滿足 Δ(0)(k)≥ Δ(0)(k-1),則稱x(0)為凹序 列 ,其中 Δ(0)(k)=x(0)(k)-x(0)(k-1)。 特別地 ,當(dāng)Δ(0)(k)< Δ(0)(k-1)時(shí) ,稱x(0)為嚴(yán)格凸序列 ;當(dāng)Δ(0)(k)> Δ(0)(k-1),稱x(0)為嚴(yán)格凹序列。
定理 1:若序列x(0)={x(0)(1),x(0)(2),…,x(0)(n)} 是凸序列,則滿足不等式:
2x(0)(k)≥x(0)(k+1)+x(0)(k-1)
若x(0)為凹序列,則滿足不等式:
2x(0)(k)≤x(0)(k+1)+x(0)(k-1)
證 明 :若x(0)是凸序列,則由定義 1 可知 Δ(0)(k)≤Δ(0)(k-1),即:
x(0)(k+1)-x(0)(k)≤x(0)(k)-x(0)(k-1)
從而 2x(0)(k)≥x(0)(k+1)+x(0)(k-1)。同理,可證x(0)為凹序列時(shí),有 2x(0)(k)≤x(0)(k+1)+x(0)(k-1)。
定義 2[1]:設(shè)x(0)={x(0)(1),x(0)(2),…,x(0)(n)} 為一非負(fù)的原始序列 ,其一次累加序列為x(1)={x(1)(1),x(1)(2),…,x(1)(n)} ,均值序列為Z(1)={z(1)(2),z(1)(3),…,z(1)(n)} ,其中Z(1)(k)=0.5(x(1)(k)+x(1)(k-1)),則稱下列離散等式:
式(1)為灰色GM(1,1)模型的均值形式,稱微分方程。
式(2)為灰色GM(1,1)模型均值形式的白化微分方程。對(duì)式(1)由最小二乘法得參數(shù)a,b估計(jì)值。
式中:
把參數(shù)a,b估計(jì)值代入式(2),求得白化方程的解為:
然后離散化,可得時(shí)間響應(yīng)序列:
一般來說,GM(1,1)建模序列都是正數(shù)序列,如果是負(fù)數(shù)序列或正負(fù)混合序列,則可以通過平移變換轉(zhuǎn)化為正數(shù)序列。因此,在應(yīng)用GM(1,1)模型進(jìn)行建模時(shí),其擬合或預(yù)測(cè)序列也應(yīng)該是正數(shù)序列。下面將論證GM(1,1)模型預(yù)測(cè)序列的一個(gè)顯著特征。
定理2:GM(1,1)模型的擬合預(yù)測(cè)序列是凹的。
證明:對(duì)一切k=1,2,…,不妨假設(shè)式(5)都是正數(shù),則有:
將式(7)與式(8)相比,有:
(1)當(dāng)a>0時(shí),顯然有e-a<1,即:
由于 (1-ea)< 0 ,于是 Δ(0)(k)=C(1-ea)e-a(k-1)< 0 ,代入式(10)則有:
(2)當(dāng)a<0時(shí),有e-a>1,即:
由于 (1-ea)> 0 ,于是 Δ(0)(k)=C(1-ea)e-a(k-1)> 0 ,代入式(12)則有:
因此,無論原始序列具有什么特征,根據(jù)定義1可知GM(1,1)模型的模擬預(yù)測(cè)序列是凹的。
定理2實(shí)際上說明了GM(1,1)模型的擬合預(yù)測(cè)值是一個(gè)凹序列,當(dāng)原始序列是凸序列時(shí),用式(5)計(jì)算得到的GM(1,1)模型擬合序列與原始凸序列的幾何形狀完全相反。因此對(duì)原始凸序列直接進(jìn)行GM(1,1)建模將會(huì)產(chǎn)生很大的誤差,預(yù)測(cè)結(jié)果將與原始序列發(fā)展態(tài)勢(shì)不一致。
根據(jù)前面對(duì)GM(1,1)模型特性分析可知,對(duì)原始凸序列進(jìn)行GM(1,1)建模,會(huì)導(dǎo)致很大的模型誤差。如果把凸序列轉(zhuǎn)換成凹序列就可以避免這種模型誤差。這里選取以第1個(gè)點(diǎn)和第n個(gè)點(diǎn)的連線作為對(duì)稱軸(如圖2所示),進(jìn)行凹凸性對(duì)稱轉(zhuǎn)換。
圖1 原始凸序列的對(duì)稱變換
定理 3:若X(0)={x(0)(1),x(0)(2),…,x(0)(n)} 為一正的凸序列,其初值化序列為,對(duì)進(jìn)行對(duì)稱變換,則得到凹序列,其中:
證明:由兩點(diǎn)法,可得到對(duì)稱軸的直線方程為:
對(duì)于任意一點(diǎn) (k,(k)),其對(duì)稱點(diǎn)為 (tk,(tk)),則兩點(diǎn)中心滿足式(15),即:
根據(jù)兩條垂線斜率乘積為-1,有:
聯(lián)立式(16)和式(17),即可解得式(14)。顯然當(dāng)k=1時(shí),有當(dāng)k=n時(shí),有
對(duì)于原始凸序列經(jīng)對(duì)稱變換之后,由于Δtk(Δtk=tk-tk-1)不為常數(shù),所以對(duì)稱變換序列為非等間距序列。這就需要建立非等間距 GM(1,1)模型)+)=b,其與等間距GM(1,1)模型的不同之處在于:
(1)間距序列
Δt={Δt1,Δt2,…,Δtn},Δt1=1,
Δtk=tk-tk-1,k=2,3,…,n
(2)一次累加序列
(3)緊鄰均值序列
(4)響應(yīng)函數(shù)序列
(5)還原值序列
因此,對(duì)于凸序列,應(yīng)用GM(1,1)模型進(jìn)行預(yù)測(cè),首先要對(duì)原始序列進(jìn)行初值化,然后對(duì)初值化序列進(jìn)行對(duì)稱變換,基于對(duì)稱序列建立GM(1,1)模型,進(jìn)而由GM(1,1)模型預(yù)測(cè)對(duì)稱序列,最后再逆變換可得原始序列的預(yù)測(cè)值。具體步驟如下:
第一步:對(duì)于一正凸數(shù)據(jù)序列x(0)={x(0)(1),x(0)(2),…,,先對(duì)原始序列初值化變換,得初值化序列;
第三步:基于對(duì)稱序列建立非等間距GM(1,1)模型,得擬合序列
第五步:計(jì)算還原值序列
例1[11]:我國2009—2015年人均天然氣生活消費(fèi)量為X(0)={13.3,17.0,19.7,21.3,23.8,25.1,26.2} ,單位:立方米。這是個(gè)單調(diào)遞增具有上凸特征的序列,這里用本文方法對(duì)原始數(shù)據(jù)進(jìn)行對(duì)稱變換再建立GM(1,1)模型,其模擬結(jié)果見表1所示。
表1 基于GM(1,1)模型2009—2015年我國人均天然氣生活消費(fèi)量模擬結(jié)果
從表1可以看出,本文方法擬合平均相對(duì)誤差明顯小于直接GM(1,1)建模的平均相對(duì)誤差。因此,對(duì)于單調(diào)遞增的凸數(shù)據(jù)序列,需要把凸數(shù)據(jù)序列轉(zhuǎn)化為凹數(shù)據(jù)序列進(jìn)行GM(1,1)建模,其建模精度更高。
例2:薩莫特洛爾油田是俄羅斯的第一大油田,1969年投產(chǎn),1980年的產(chǎn)量達(dá)到峰值,在1980—1988年遞減階段的年產(chǎn)量分別為:X(0)={15.48,15.03,14.38,14,13.06,12.09,10.98,9.88,8.27},其單位:107t/年。這顯然是個(gè)單調(diào)遞減的凸數(shù)據(jù)序列,如果也用本文中給出方法進(jìn)行數(shù)據(jù)對(duì)稱變換再建立GM(1,1)模型,模擬結(jié)果見表2所示。
表2 基于GM(1,1)模型薩莫特洛爾油田遞減階段的年產(chǎn)量模擬結(jié)果
表2比較結(jié)果也顯示:本文方法擬合誤差比直接GM(1,1)建模誤差要小很多。因此,對(duì)于單調(diào)遞減的凸數(shù)據(jù)序列,同樣需要對(duì)凸數(shù)據(jù)序列進(jìn)行凹凸性轉(zhuǎn)換,才能取得更好的GM(1,1)建模效果。
根據(jù)本文證明可知,GM(1,1)模型的模擬預(yù)測(cè)序列具有凹向性,因此GM(1,1)模型適合凹數(shù)據(jù)序列建模。對(duì)于凸數(shù)據(jù)序列,要使得預(yù)測(cè)結(jié)果符合原始序列的發(fā)展趨勢(shì),需要對(duì)原始數(shù)據(jù)進(jìn)行對(duì)稱變換,否則預(yù)測(cè)結(jié)果失真。經(jīng)過進(jìn)一步研究發(fā)現(xiàn),對(duì)于凸數(shù)據(jù)序列采用GM(1,1)模型預(yù)測(cè)時(shí),僅對(duì)GM(1,1)模型參數(shù)進(jìn)行優(yōu)化,GM(1,1)模型擬合精度并不能有效提高,其預(yù)測(cè)結(jié)果更偏離原始序列發(fā)展趨勢(shì)。要想從根本上解決模型誤差,可以借助對(duì)稱變換,把原始序列是凸的轉(zhuǎn)換成凹的,然后再進(jìn)行GM(1,1)建模。