王 亮,滕克難,呂衛(wèi)民,金永川
(1.海軍航空工程學(xué)院a.七系;b.訓(xùn)練部,山東 煙臺(tái) 264001;2.中國人民解放軍 91681部隊(duì),浙江 寧波 315731)
灰色系統(tǒng)理論是我國學(xué)者鄧聚龍于20世紀(jì)80年代創(chuàng)立的一種處理“部分信息已知,部分信息未知”的“小樣本,貧信息”不確定系統(tǒng)的理論,其中灰色預(yù)測建模技術(shù)是灰色系統(tǒng)最重要的內(nèi)容之一,也是預(yù)測理論體系中一個(gè)新的研究分支[1]。GM(1,1)模型是灰色預(yù)測技術(shù)的基礎(chǔ)模型,在其發(fā)展過程中得到了深入的研究,并有很多學(xué)者提出了不少改進(jìn)方法,主要包括:殘差修正法[1]、背景值構(gòu)造法[2]、中心逼近法[3]、時(shí)間響應(yīng)函數(shù)法[4]等。雖然這些方法在一定程度上提高了模擬與預(yù)測精度,但始終無法克服GM(1,1)模型利用離散方程進(jìn)行參數(shù)估計(jì),而利用連續(xù)時(shí)間響應(yīng)方程進(jìn)行預(yù)測造成的跳躍性誤差。2005年,謝乃明[5]提出了離散灰色預(yù)測模型,將參數(shù)估計(jì)和預(yù)測模型統(tǒng)一為離散形式,有效地避免了由離散序列到連續(xù)方程造成的誤差。之后有學(xué)者對(duì)DGM(1,1)模型進(jìn)行了進(jìn)一步的優(yōu)化與改進(jìn)。姚天祥等[6]針對(duì)經(jīng)典DGM(1,1)模型的不足,研究了離散灰色模型選取不同初始迭代點(diǎn)的模擬數(shù)據(jù)增長率特點(diǎn),并提出了兩類分段修正離散灰色模型。劉衛(wèi)鋒等[7]通過選取三種不同修正形式初始迭代值,分別建立了三種優(yōu)化離散灰色模型。李偉等[8]針對(duì)傳統(tǒng)DGM(1,1)模型建模過程中假定原始數(shù)據(jù)序列服從近似指數(shù)增長規(guī)律,且以數(shù)據(jù)序列的第1個(gè)數(shù)據(jù)保持不變得出預(yù)測結(jié)果的缺陷,利用組合函數(shù)“對(duì)數(shù)—冪函數(shù)”對(duì)原始數(shù)據(jù)進(jìn)行處理,使其符合灰色預(yù)測模型的建模規(guī)律,并引入遺傳算法尋求離散灰色模型初始迭代值的最優(yōu)解。但實(shí)際上傳統(tǒng)的GM(1,1)與DGM(1,1)模型在工程應(yīng)用中仍存在一些共同的缺陷與弊端。
本文分析了GM(1,1)及DGM(1,1)模型對(duì)數(shù)據(jù)要求上的限制,指出對(duì)于非定值增長的數(shù)據(jù)序列,GM(1,1)與DGM(1,1)模型的模擬及預(yù)測效果并不理想??紤]到系統(tǒng)行為發(fā)展的復(fù)雜時(shí)變性,為提高對(duì)各類型趨勢(shì)數(shù)據(jù)的預(yù)測能力,引入非線性時(shí)間項(xiàng),構(gòu)造了一種拓展的非線性時(shí)變參數(shù)離散灰色模型(NTDGM(1,1)模型),利用粒子群算法(PSO)優(yōu)化得到模型中各參數(shù),并說明應(yīng)用該模型進(jìn)行建模和預(yù)測的步驟。最后通過實(shí)例比較該模型與其他模型的模擬及預(yù)測精度,結(jié)果顯示本文模型對(duì)各類型趨勢(shì)的數(shù)據(jù)模擬及預(yù)測均具有更高的精度。
由上式可知GM(1,1)模型的模擬數(shù)據(jù)是一個(gè)等比序列,數(shù)據(jù)序列的增長率為一個(gè)定值,而且由于在時(shí)間響應(yīng)序列中假定了x(1)(1)=x(0)(1),在應(yīng)用中也會(huì)導(dǎo)致預(yù)測結(jié)果精確度不高。同時(shí),由于樣本數(shù)據(jù)初始值的改變不影響模型的發(fā)展系數(shù)和模擬值,因此,這也從某種程度上反映了初始值信息的損失。
GM(1,1)模型的離散形式,即離散灰色模型(Discrete grey model,DGM(1,1))為
由上式可知,與GM(1,1)模型相同,利用DGM(1,1)模型計(jì)算的模擬序列增長率也是一個(gè)定值。而且與GM(1,1)模型一樣,DGM(1,1)模型也假設(shè)x(1)(1)=x(0)(1),這將導(dǎo)致初始值信息的丟失。
通過以上分析可知,無論是GM(1,1)還是DGM(1,1)模型的模擬值和預(yù)測值始終保持固定的增長率,因此這兩個(gè)模型對(duì)近似指數(shù)規(guī)律的數(shù)據(jù)序列具有較好的模擬和預(yù)測效果。但在實(shí)際工程應(yīng)用中,數(shù)據(jù)序列往往并不具備指數(shù)規(guī)律,兩種模型的計(jì)算誤差均較大。
進(jìn)一步分析DGM(1,1)模型可以看出,該模型中參數(shù)β是固定值,即表明DGM(1,1)模型適用于線性時(shí)不變系統(tǒng)的分析建模。但是在工程技術(shù)領(lǐng)域中,系統(tǒng)行為序列自身及不同行為序列間的相互作用導(dǎo)致系統(tǒng)輸出序列呈現(xiàn)出復(fù)雜的非線性,而且系統(tǒng)隨著時(shí)間的推移,其參數(shù)及結(jié)構(gòu)也不斷發(fā)生演化,因此利用恒定參數(shù)對(duì)現(xiàn)實(shí)系統(tǒng)行為進(jìn)行模擬和預(yù)測是不合理、不科學(xué)的。為克服這種不足,本文將非線性時(shí)變參數(shù)引入,代替?zhèn)鹘y(tǒng)DGM(1,1)模型中的恒定參數(shù),構(gòu)造一種拓展的非線性時(shí)變參數(shù)灰色離散預(yù)測模型。
為拓展的非線性時(shí)變參數(shù)灰色離散預(yù)測模型(NT-DGM(1,1))。
該模型主要由三部分構(gòu)成:第一部分稱作趨勢(shì)項(xiàng),為(β1+β2sin(β3k+β4))x(1)(k),引入非線性時(shí)變正弦函數(shù),通過4個(gè)參數(shù)的變化實(shí)現(xiàn)對(duì)系統(tǒng)行為總體趨勢(shì)的模擬及預(yù)測;第二部分稱作新信息項(xiàng),為β5x(0)(k),主要表現(xiàn)了最新信息對(duì)系統(tǒng)行為的影響;第三部分稱作調(diào)整項(xiàng),為β6k2+β7k+β8,對(duì)模型的模擬精確度進(jìn)行進(jìn)一步調(diào)整。同時(shí),令 x(1)(1)=x(0)(1)+ε,利用參數(shù)ε修正x(1)(1),以解決初始值信息丟失的問題。
鑒于模型的復(fù)雜性,本文利用粒子群算法計(jì)算模型的各個(gè)參數(shù)。
粒子群算法[9.10](PSO)最早是由Eberhart和Kennedy于1995年提出,它的基本概念源于對(duì)鳥群覓食行為的研究。設(shè)想這樣一個(gè)場景:一群鳥在隨機(jī)搜尋食物,在這個(gè)區(qū)域里只有一塊食物,所有的鳥都不知道食物在哪里,但是它們知道當(dāng)前的位置離食物還有多遠(yuǎn)。那么找到食物的最優(yōu)策略是什么呢?最簡單有效的就是搜尋目前離食物最近的鳥的周圍區(qū)域。
PSO從這種模型中得到啟示并用于解決優(yōu)化問題。PSO中,每個(gè)優(yōu)化問題的解都是搜索空間中的一只鳥。我們稱之為“粒子”。所有的粒子都有一個(gè)由被優(yōu)化的函數(shù)決定的適應(yīng)值(fitness value),每個(gè)粒子還有一個(gè)速度決定他們飛翔的方向和距離,然后粒子們就追隨當(dāng)前的最優(yōu)粒子在解空間中搜索。
PSO初始化為一群隨機(jī)粒子(隨機(jī)解)。然后通過迭代找到最優(yōu)解。在每一次迭代中,粒子通過跟蹤兩個(gè)“極值”來更新自己。第一個(gè)就是粒子本身所找到的最優(yōu)解,這個(gè)解叫做個(gè)體極值pBest。另一個(gè)極值是整個(gè)種群目前找到的最優(yōu)解,這個(gè)極值是全局極值gBest。另外也可以不用整個(gè)種群而只是用其中一部分作為粒子的鄰居,那么在所有鄰居中的極值就是局部極值。其數(shù)學(xué)描述如下:
設(shè)搜索空間為D維,總粒子數(shù)為n。第i個(gè)粒子位置表示為向量Xi=(xi1,xi2,…,xiD),第 i個(gè)粒子迄今為止搜索到的最優(yōu)位置為Pi=(pi1,pi2,…,piD),整個(gè)粒子群迄今為止搜索到的最優(yōu)位置為 Pg=(pg1,pg2,…,pgD),第i個(gè)粒子位置的變化率(速度)為向量Vi=(vi1,vi2,…,viD)。每個(gè)粒子的位置按如下公式進(jìn)行變化:
其中,c1,c2為正常數(shù),稱為加速常數(shù);rand()為[0,1]之間的隨機(jī)數(shù);ω為慣性權(quán)重。公式由三部分組成,第一部分是粒子先前的速度,說明了粒子目前的狀態(tài);第二部分是認(rèn)知部分,表示粒子本身的思考;第三部分為社會(huì)部分。三個(gè)部分共同決定了粒子的空間搜索能力。第一部分起到了平衡全局和局部搜索的能力;第二部分使粒子有了足夠強(qiáng)的全局搜索能力,避免局部極小;第三部分體現(xiàn)了粒子間的信息共享。在這三部分的共同作用下粒子才能有效地達(dá)到最好位置。
利用PSO計(jì)算NTDGM(1,1)模型中各個(gè)參數(shù),以模擬值與原始值的總絕對(duì)百分誤差為適應(yīng)度函數(shù):
綜上所述,基于粒子群算法的非線性時(shí)變參數(shù)離散灰色預(yù)測模型的建模及求解過程可分為如下步驟:
(1)以(11)式作為適應(yīng)度函數(shù),利用PSO算法求解NTDGM(1,1)模型中各個(gè)參數(shù),算法終止條件設(shè)置為最大迭代次數(shù)。
(2)將各個(gè)參數(shù)帶入(9)式,計(jì)算 x?(1)(k)的數(shù)值解,k=1,2,…,n。
(3)利用累減還原算子計(jì)算 x?(0)(k),k=2,3,…,n 。
算例1:文獻(xiàn)[11]研究提出了一種拓展的DGM(1,1)模型,但是并未考慮系統(tǒng)行為發(fā)展的非線性特點(diǎn),利用其算例對(duì)比分析兩種模型的模擬效果,NTDGM(1,1)1模型中各參數(shù)利用粒子群算法得到,令加速常數(shù)c1=c2=2,慣性權(quán)重ω設(shè)定為0.8,粒子數(shù)設(shè)定為60,迭代次數(shù)為600,并循環(huán)200次,得到各模型結(jié)果如下表所示。圖1表示利用粒子群算法使適應(yīng)度函數(shù)最小時(shí),適應(yīng)度函數(shù)值(總絕對(duì)百分誤差)的收斂情況。
表1 與文獻(xiàn)[11]對(duì)比各模型模擬預(yù)測值及平均絕對(duì)百分誤差(%,MAPE)
圖1 適應(yīng)度函數(shù)收斂情況
由表1可以看出,相對(duì)傳統(tǒng)GM(1,1)模型和文獻(xiàn)[11]提出的模型,本文提出的NTDGM(1,1)模型對(duì)13個(gè)數(shù)據(jù)的模擬預(yù)測值的平均絕對(duì)值相對(duì)誤差僅為2.283%,大幅提高了精度。另外從圖1中可以看出,大約在迭代360次左右時(shí),適應(yīng)度函數(shù)值(總絕對(duì)百分誤差)逐漸收斂為0.2967(29.67%)。
算例2:文獻(xiàn)[12]研究提出了一些特殊序列的改進(jìn)的DGM(1,1)模型,并給出了幾種模型的比較,本文以該文獻(xiàn)所給出的算例進(jìn)行驗(yàn)證。
利用粒子群算法計(jì)算本文所提出模型的參數(shù),令加速常數(shù)c1=c2=2,由于數(shù)據(jù)趨勢(shì)各不相同,為得到更精確地預(yù)測模型,本文將粒子數(shù)設(shè)定為100,迭代次數(shù)為600,并循環(huán)500次,慣性權(quán)重ω從0.4到1.2分別進(jìn)行優(yōu)化計(jì)算,得到各類型數(shù)據(jù)序列的模擬結(jié)果如表2所示。
由表2可以看出,相對(duì)于傳統(tǒng)的DGM(1,1)模型以及文獻(xiàn)[12]提出的DDGM(1,1)和IDGM(1,1)模型,本文提出的拓展非線性時(shí)變參數(shù)灰色離散預(yù)測模型的模擬精度極高,對(duì)各種類型趨勢(shì)的數(shù)據(jù)均具有極好的模擬能力。對(duì)比算例1還以可看出,對(duì)于只有幾個(gè)數(shù)據(jù)(算例2中每類數(shù)據(jù)序列只有5個(gè)數(shù)據(jù))的序列進(jìn)行模擬預(yù)測時(shí),NTDGM(1,1)模型基本可以完全一致的模擬預(yù)測出原始數(shù)據(jù)序列。
本文分析了傳統(tǒng)的GM(1,1)及DGM(1,1)模型的模擬數(shù)據(jù)的增長率是一個(gè)定值,指出對(duì)非近似指數(shù)增長的數(shù)據(jù)序列,GM(1,1)與DGM(1,1)的模擬機(jī)預(yù)測效果較差。為解決實(shí)際工程中系統(tǒng)行隨時(shí)間變化的復(fù)雜性,針對(duì)離散灰色模型參數(shù)恒定的缺陷,通過引入非線性時(shí)變項(xiàng),并加入新信息構(gòu)造了非線性時(shí)變參數(shù)離散灰色預(yù)測模型,鑒于模型的復(fù)雜性提出利用PSO算法求解模型參數(shù),通過2個(gè)算例的對(duì)比分析可以看出NTDGM(1,1)模型很大程度上提高了模擬精度,特別是對(duì)“貧信息,少數(shù)據(jù)”的系統(tǒng),幾乎可以完全模擬各種類型趨勢(shì)的數(shù)據(jù)序列。
表2 與文獻(xiàn)[12]對(duì)比各模型模擬預(yù)測值及平均絕對(duì)百分誤差(%,MAPE)
[1]劉思峰,黨耀國,方志耕,等.灰色系統(tǒng)理論及其應(yīng)用[M].北京:科學(xué)出版社,2010.
[2]尚軍亮,方敏.一種優(yōu)化的高精度灰色GM(1,1)預(yù)測模型[J].電子與信息學(xué)報(bào),2010,32(6).
[3]宋中民,同小軍,肖新平.中心逼近式灰色GM(1,1)模型[J].系統(tǒng)工程理論與實(shí)踐,2001,21(5).
[4]劉斌,劉思峰,翟振杰,等.GM(1,1)模型時(shí)間響應(yīng)函數(shù)的優(yōu)化[J].中國管理科學(xué),2003,11(4).
[5]謝乃明,劉思峰.離散GM(1,1)模型與灰色預(yù)測模型建模機(jī)理[J].系統(tǒng)工程理論與實(shí)踐,2005,25(1).
[6]姚天祥,劉思峰,黨耀國.初始值優(yōu)化的離散灰色預(yù)測模型[J].系統(tǒng)工程與電子技術(shù),2009,31(10).
[7]劉衛(wèi)鋒,何霞,程少華,等.一類優(yōu)化離散灰色模型及其等價(jià)模型[J].西華大學(xué)學(xué)報(bào),2011,30(1).
[8]李偉,董偉棟,袁亞南.基于組合函數(shù)和遺傳算法最優(yōu)化離散灰色模型的電力負(fù)荷預(yù)測[J].電力自動(dòng)化設(shè)備,2012,32(4).
[9]肖俊.基于粒子群算法的GM(1,1)模型及其應(yīng)用[D].武漢:華中科技大學(xué),2005.
[10]吳曉軍,李峰,馬悅,等.均勻搜索粒子群算法的收斂性分析[J].電子學(xué)報(bào),2012,40(6).
[11]姚天祥,劉思峰.改進(jìn)的離散灰色預(yù)測模型[J].系統(tǒng)工程,2007,25(9).
[12]曾波,孟偉.面向特殊序列的灰色預(yù)測建模方法[M].重慶:重慶大學(xué)出版社,2011.