閆海霞, 王秋萍, 郭佳麗
(1.西安理工大學高科學院, 陜西 西安 710109; 2.西安理工大學 理學院, 陜西 西安 710054)
灰色系統理論是我國學者鄧聚龍教授于1982年創(chuàng)立[1],而灰色預測模型則是灰色系統理論中重要的部分之一?;疑A測模型主要通過累加生成來弱化序列的隨機波動性,尋找其變化規(guī)律的基礎上,再經過分析建模,一般具有較高的模擬和預測精度,能夠廣泛應用于眾多領域[2]。GM(1,1)模型適用于有較強指數規(guī)律的序列,描述單調的變化過程。
灰色預測技術不同于傳統預測技術,它采用近似微分方程來描述一個時間序列的未來趨勢,它的優(yōu)勢是在一個預測過程中,可以用少到4個觀測數據的情況下建立精度較高的動態(tài)模型。這樣,克服傳統方法的局限性是方便的。正因為此,鄧聚龍教授[3]1985年提出了GM模型之后,GM(1,1)便成功地被應用于醫(yī)學、圖像處理,環(huán)境、農業(yè)、林業(yè)等方面并取得了實效。2000年,劉思峰和鄧聚龍[4]研究了GM(1,l)模型的適用范圍,這為GM(1,l)模型的更加廣泛應用奠定了基礎。經過近40年的努力,對灰色預測模型的研究和應用取得了一系列豐碩的成果。本文簡單綜述GM(1,1)模型初始值的優(yōu)化,模型參數的估計方法問題。在灰色預測模型中影響預測值的并不僅僅是辨識參數,初值項對預測值的影響同樣也是存在的?;疑獹M(1,1)模型的初始條件對其精度有著重要的影響,文獻[5]以x(1)(m)為初始條件改進灰色預測公式,其中m可以根據實際情況從1, 2,…,n中選擇。根據灰色系統理論的新信息優(yōu)先原理,文獻[6-7]在建模過程中賦予新信息較大的權重,把X(1)的第n個分量x(1)(n)作為灰色微分模型的初始條件。文獻[8]利用最小二乘法確定GM(1,1)白化權函數的時間響應函數中的常數C(灰色預測模型的邊值),構建了GM(1,1) 的時間響應函數的最優(yōu)模型。文獻[9]以相對誤差平方和最小為目標優(yōu)化GM(1,1)模型,分別對初始條件和初始點進行優(yōu)化,分別考慮原始序列和累加序列的誤差,給出優(yōu)化的計算公式。GM(1,1)模型的初始值優(yōu)化就是優(yōu)化指數模型的一個參數,這個參數不一定是某個原始數據。文獻[10]取1-AGO序列所有分量的加權平均作為初始條件,權重由各分量的大小決定,達到綜合考慮中各分量的作用的目的。文獻[11]針對GM(1,1)冪模型冪指數和初始條件優(yōu)化問題,提出了一種基于初始條件和冪指數協同優(yōu)化的方法,模型精度優(yōu)于對比模型。
傳統GM(1,1)模型估計參數采用最小二乘準則,除了最小二乘準則之外還有最小一乘準則、極小極大準則、平均相對誤差達到最小準則和最大相對誤差達到最小準則等。文獻[12]在灰色微分方程中分別采用向后差商、向前差商、中心差商代替導數的方法,并結合估計參數的不同極小化準則,得到估計GM(1,1)模型中參數的一族算法。近年來,智能算法被用于改進模型的精度,文獻[13]采用免疫進化算法求解GM(1,1)模型參數。文獻[14]基于粒子群算法及最小一乘準則估計灰色模型參數。文獻[15]采用加權最小二乘方法估計模型參數。文獻[16]用遺傳算法找最優(yōu)參數。文獻[17]采用粒子群算法求模型參數。文獻[18]將蟻獅優(yōu)化算法引入灰色預測模型,提出一種用于預測中國天然氣需求的新型自適應智能灰色模型。文獻[19]雜合改進的鯨魚優(yōu)化算法與灰色季節(jié)變化指數模型,用于預測居民的用電量。
基于上述文獻綜述對GM(1,1)模型的初始值和參數優(yōu)化仍是一個值得研究的問題,如何采用算法簡單、參數少、易調節(jié)、計算量小、尋優(yōu)精度較高的性能良好的智能算法優(yōu)化GM(1,1)模型的初值和模型的參數是一個值得研究的方向。本文在分析了GM(1,1)模型自身存在的擬合誤差問題的基礎上,提出飛蛾火焰優(yōu)化算法優(yōu)化的GM(1,1)模型,以期望減少GM(1,1)模型的擬合誤差,提高模擬和預測精度。
定義1[2]設x(0)為原始數據序列,x(1)為x(0)的一次累加序列,z(1)為x(1)的緊鄰均值生成序列,則稱:
x(0)(k)+az(1)(k)=b
(1)
為GM(1,1)模型的基本形式。其中
(2)
定義2[2]稱:
(3)
為GM(1,1)模型的白化方程。式(3)中a,b為兩個待識別參數。
設x(0),x(1),z(1)如定義1所述,令
(4)
(5)
(6)
GM(1, 1)模型白化方程的解為:
(7)
灰色GM(1,1)模型的時間響應式為:
(8)
(9)
式中:k= 1, 2, 3, …。
從式(9)中可以看出,在GM(1,1)預測模型中任意時刻k(k≥2)的預測值的偏差主要是由辨識參數和初值引起的,如果我們將灰色GM(1,1)模型和其它技術相結合進行分析和預測,可以提高預測能力,改善預測精度。下面引入飛蛾火焰優(yōu)化算法對GM(1,1)模型進行改進。
MFO算法是受飛蛾在夜間使用橫向定位(transverse orientation)飛行這一生物行為的啟發(fā),利用飛蛾在人工火焰周圍的螺旋飛行軌跡而設計的一種元啟發(fā)式算法。其中飛蛾表示在搜索空間中移動的搜索個體,而火焰是到目前為止飛蛾獲得的最佳位置。每只飛蛾以所對應的火焰作為尋優(yōu)指導,不斷調整自己的飛行軌跡向全局最優(yōu)解靠攏。MFO算法具體描述見下。
1) 種群初始化
在MFO算法中,假設飛蛾是候選解,問題的變量是飛蛾在搜索空間中的位置。飛蛾種群在矩陣中表示如下:
(11)
在MFO算法中另一個關鍵的組成部分是火焰,火焰位置是與飛蛾位置相同維度的變量矩陣:
(12)
同樣對于所有火焰,用數組OF來存儲相應的適應度值,見式(13)。
(13)
2) 位置更新過程
MFO算法給每只飛蛾分配一個特定的火焰來更新位置,其位置更新的整個過程分為飛蛾圍繞火焰更新位置和火焰數量自適應減少。
① 飛蛾圍繞火焰更新位置
MFO算法使用對數螺旋函數來更新飛蛾的位置,公式如下:
Mi=S(Mi,Fj)=Di·ect·cos(2πt)+Fj
(14)
式中:Di=|Fj-Mi|是飛蛾Mi與火焰Fj之間的距離;c是與螺旋形狀相關的常數;t∈[-1, 1]是隨機數,t=-1表示離火焰最近的位置,t=1表示離火焰最遠的位置。在優(yōu)化過程中,為了進一步增強開發(fā)能力,假定t是[r, 1]中的隨機數,r從-1線性遞減到-2。
②火焰數量自適應減少
在迭代的初始階段有N個火焰,MFO算法自適應減少火焰數量直到保留最后一個最優(yōu)火焰:
(15)
式中:l是當前迭代次數,N是最大火焰數,T是最大迭代次數。
基于飛蛾火焰優(yōu)化算法,在優(yōu)化GM(1,1)模型參數a和b的過程中,同時搜索最優(yōu)初值。本文在兩個方面對GM(1,1)模型改進以達到提高預測精度的目的。MFO尋優(yōu)時需給出每個變量的上界、下界,下面討論之。
1) 用MFO算法優(yōu)化參數a,b
由文獻[4]知當GM(1,1)發(fā)展系數|a|≥2時,GM(1,1)模型無意義,故使用MFO時,設置|a|<2。而由a的取值范圍以及x(0)(k)+az(1)(k)=b可得b的取值范圍。
2) 對于初始值的改進,引入一個邊值修正量μ,記初值:
s=x(0)(1)+μ=x(1)(1)+μ
(16)
基本GM(1,1)模型[2]的初值s=x(1)(1),文獻[5]中根據實際情況s在x(1)(1),x(1)(2), …,x(1)(n)中選擇其中之一,文獻[6]中依據新信息優(yōu)先原理取s=x(1)(n)。與上述文獻不同的是本文利用飛蛾火焰優(yōu)化算法在連續(xù)區(qū)間[x(1)(1),x(1)(n)]搜索得到最優(yōu)的s。
為了盡量減少原始序列的擬合值與實際值之間的相對誤差,最小化平均絕對相對誤差值,這樣GM(1,1)模型可以轉換為以下優(yōu)化模型:
(17)
在灰色GM(1,1)模型求解過程中初值x(1)(1)與a,b的取值對預測公式(8)均有影響。所以為了減少影響,本文首先運用飛蛾火焰優(yōu)化算法估計參數a,b,同時給邊值x(0)(1)一個修正μ,此時預測公式(8)變?yōu)椋?/p>
k=2, 3, …
(18)
本文采用飛蛾火焰優(yōu)化算法[20]求最優(yōu)的a,b, 和μ。
記x(0)(1)+μ=x(1)(1)+μ=s,采用平均絕對相對誤差達到最小的準則,則適應度函數為:
(19)
MFO優(yōu)化GM(1, 1)模型的算法的步驟如下所述。
步驟1 選擇原始數據序列為x(0),然后對序列x(0)應用一階累加生成算子得到序列x(1)。
步驟3 初始化位置。 隨機初始化種群,生成N個飛蛾,這些飛蛾可以作為問題的候選解。飛蛾在種群中的位置是
(20)
式中:-2 步驟6 計算所有飛蛾的適應度值,比較適應度的值,可得火焰的位置和適應度值。 步驟7 進行火焰的數目和飛蛾的位置更新迭代。 步驟8 如果迭代次數超過最大值T,則輸出解;否則返回步驟4。 在預試驗中,筆者比較了不同體積分數的甲醇(60%、70%、80%、90%)作為提取溶劑時的提取效率。結果,采用70%甲醇作為提取溶劑時,色譜峰數量較多,峰面積響應好,故選擇70%甲醇作為提取溶劑。因丹皮酚為易揮發(fā)性物質,故提取方法選擇超聲提取。筆者考察了不同超聲提取時間(15、30、45、60 min)對提取效率的影響,結果30 min的提取效率優(yōu)于15 min,而再延長提取時間后提取效率無明顯差別,因此選擇30 min作為提取時間。 下面分別利用基本灰色GM(1,1)模型,初值為x(1)(n)的GM(1,1)模型,和本文提出的MFOGM(1,1)模型,對南方電網某變電站SSP9-H-120000/220型220kV主變壓器為例進行模擬,并比較其精度。從變電站在線監(jiān)測系統中獲取該變壓器中-高低地繞組連同套管絕緣其中選取電阻近7年的數據為建模數據見表1。 表1 絕緣電阻歷史數據Tab.1 Historical data of insulation resistance 用最小二乘法得到辨識參數為: a=0.20,b=7964.5 (21) 得基本GM(1,1)模型的預測序列為: (22) 以及在飛蛾火焰優(yōu)化算法取種群大小30,最大迭代代數500,可得改進GM(1, 1)參數: a=0.1959,b= 13333.082,s=31140 (23) 于是改進的GM(1,1)預測序列為: k=2, 3, … (24) 預測精確性是評價預測技術的重要準則,本文采用兩個衡量指標:相對誤差(RE),平均絕對百分比誤差(MAPE),它們的定義分別如下: (25) (26) 絕緣電阻擬合數據,模型的誤差見表2。由表2可以看出本文所給出的改進GM(1,1)模型的擬合誤差既小于初值為x(1)(1)的GM(1,1)模型的擬合誤差也小于初值為x(1)(n)的GM(1,1)模型的擬合誤差。 表2 絕緣電阻的擬合值與其相對誤差Tab.2 Fitted value and its relative error of insulation resistance 本文所提出的MFOGM(1,1)模型的使用條件和GM(1,1)模型一樣都是適應于非負的時間序列,但MFOGM(1,1)模型有如下優(yōu)勢。 1) 本文利用MFO算法識別GM(1,1)模型的參數a,b時,設置了參數a的取值范圍|a|<2,確保了所建立的GM(1,1)模型是有意義的[3]。 2) 初值是影響GM(1,1)模型精度的因素之一,因此,探尋合理的初值可以改進GM(1,1)模型的精度?;綠M(1,1)模型的初值為x(1)(1)=x(0)(1),本文在連續(xù)區(qū)間[x(1)(1),x(1)(n)]搜索最佳初值,較已有的改進:取x(1)(n)或在x(1)(1),x(1)(2), …,x(1)(n)中選擇其中之一,更為合理。 3) 現有的改進GM(1,1)模型的工作著重于改善模型精度,很少考慮模型的擬合和預測速度。本文使用MFO算法時,飛蛾Mi=(ai,bi,si)是一個3維向量,這樣識別GM(1,1)模型參數a,b的同時,搜索到了最佳的初值。將飛蛾火焰優(yōu)化算法(MFO)與GM(1,1)模型相結合,本文改進GM(1,1)模型精度的同時,提高了算法的速度。 本文在已有研究的基礎上,從優(yōu)化GM(1,1)模型中的兩個參數和修正微分方程解初始值兩個角度去改進GM(1,1)模型。不是采用先驗信息x(1)(1),x(1)(2),…,x(1)(n),而是在連續(xù)區(qū)間[x(1)(1),x(1)(n)]搜索最優(yōu)初值代替?zhèn)鹘y模型GM(1,1)微分方程解的初始值x(0)(1)。以平均相對誤差達到最小為適應度函數,利用飛蛾火焰優(yōu)化算法優(yōu)化GM(1, 1)模型中的參數和最優(yōu)初值,得到更高精度的改進 GM(1,1)模型。選取絕緣電阻的歷史數據,分別采用基分別采用基本形式灰色GM(1,1)(以x(1)(1)為初值條件)、以x(1)(n)為初值條件的改進灰色GM(1,1)模型,基于飛蛾火焰優(yōu)化算法改進GM(1,1)模型進行擬合和預測。結果表明基于飛蛾火焰優(yōu)化算法改進的灰色GM(1,1)模型能利用歷史數據的固有信息,提高模型精度。 然而,飛蛾火焰優(yōu)化算法改進的GM(1,1)模型預測仍然是指數增長曲線,這樣就決定了改進的模型仍然在短期預測中使用,對于長期預測仍會產生較大的誤差,因此,還需要進一步改進預測模型,以促進灰色系統理論的發(fā)展。4 改進GM(1,1)模型的應用
5 結 語