張以帥 ,賴惠鴿 ,李 勇 ,唐光耀 ,張晨藝
(1.寧夏大學(xué) 機(jī)械工程學(xué)院,銀川 750021;2.山東省產(chǎn)品質(zhì)量檢驗(yàn)研究院,濟(jì)南 250102)
天然氣作為一種潔凈、節(jié)能的優(yōu)質(zhì)氣體燃料,它的使用量與日俱爭(zhēng),這就對(duì)天然氣管網(wǎng)系統(tǒng)提出了更高要求。對(duì)于天然氣管網(wǎng)系統(tǒng)而言,短期負(fù)荷預(yù)測(cè)是自動(dòng)化技術(shù)的重要組成部分,精準(zhǔn)的預(yù)測(cè)結(jié)果可以為規(guī)劃天然氣供應(yīng)、實(shí)現(xiàn)管網(wǎng)維護(hù)和優(yōu)化調(diào)度提供根本依據(jù),有效減少能源損耗,提升管網(wǎng)運(yùn)行安全和效率[1]。
目前,常用的預(yù)測(cè)方法大致分傳統(tǒng)方法和智能預(yù)測(cè)方法兩類。傳統(tǒng)方法包括回歸分析法、時(shí)間序列模型等,其預(yù)測(cè)的主要思想是基于曲線走勢(shì)和函數(shù)形式來(lái)進(jìn)行預(yù)測(cè),對(duì)線性數(shù)據(jù)的預(yù)測(cè)效果較好。文獻(xiàn)[2]使用的時(shí)間序列方法,利用數(shù)據(jù)的時(shí)間關(guān)系建立預(yù)測(cè)數(shù)學(xué)關(guān)系式,但是未考慮溫度、日期等非線性因素對(duì)負(fù)荷的影響,不能真實(shí)地反映天然氣負(fù)荷的實(shí)際規(guī)律。智能預(yù)測(cè)方法中的人工神經(jīng)網(wǎng)絡(luò)預(yù)測(cè),因其有強(qiáng)大的多元非線性映射能力得到廣泛應(yīng)用。文獻(xiàn)[3]中利用單一神經(jīng)網(wǎng)絡(luò)建立的小時(shí)負(fù)荷預(yù)測(cè)模型取得了很好的預(yù)測(cè)效果,但是神經(jīng)網(wǎng)絡(luò)有自身的缺陷,易出現(xiàn)局部最優(yōu)和過(guò)擬合現(xiàn)象。
針對(duì)上述問(wèn)題,在前人研究的基礎(chǔ)上提出了一種基于思維進(jìn)化算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的組合模型。思維算法具有很好的全局搜索性,利用思維算法的全局搜索性優(yōu)化網(wǎng)絡(luò)中的權(quán)值和閾值。同時(shí)設(shè)計(jì)了“趨同”與“異化”算子進(jìn)行有效的結(jié)構(gòu)優(yōu)化,在局部空間內(nèi)搜索局部最優(yōu)解,然后利用異化算子跳出局部空間的約束,在整個(gè)解空間搜索全局最優(yōu)解。將該模型應(yīng)用于銀川某縣的天然氣負(fù)荷預(yù)測(cè)對(duì)其預(yù)測(cè)性能進(jìn)行驗(yàn)證,預(yù)測(cè)結(jié)果表明該組合模型比單一的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)精度有很大提高,具有一定的可行性和實(shí)際工程應(yīng)用價(jià)值。
BP(back propagation)神經(jīng)網(wǎng)絡(luò)是1986年由Rumelhart和McCelland為首的科學(xué)家小組提出,是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一[4-5]。其中3層神經(jīng)網(wǎng)絡(luò)已經(jīng)證明可以映射任何復(fù)雜非線性情況,其結(jié)構(gòu)如圖1所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 BP neural network structure
3層神經(jīng)網(wǎng)絡(luò)包括輸入層、隱含層和輸出層,各層神經(jīng)元通過(guò)權(quán)值和閾值連接,同層神經(jīng)元之間無(wú)連接。其映射和預(yù)測(cè)的功能是通過(guò)網(wǎng)絡(luò)訓(xùn)練實(shí)現(xiàn)的,具體訓(xùn)練過(guò)程如下:
1)初始化網(wǎng)絡(luò)。確定輸入維數(shù)n、輸出維數(shù)m和隱含層節(jié)點(diǎn)數(shù)l,初始化輸入層、隱含層神經(jīng)元之間的連接權(quán)值wij和隱含層與輸出層神經(jīng)元之間的連接權(quán)值wjk,初始化隱含層閾值a,輸出層閾值b,給定學(xué)習(xí)速率和神經(jīng)元激勵(lì)函數(shù)f(·)。
2)計(jì)算隱含層輸出。
3)計(jì)算輸出層。
4)誤差計(jì)算。
5)權(quán)值更新。
7)判斷算法迭代是否結(jié)束,若未結(jié)束,則返回步驟 2)。
(6)閾值更新。
思維進(jìn)化算法MEA(mind evolutionary algorithm)屬于進(jìn)化算法的一種,由孫誠(chéng)意等人于1998年提出。思維進(jìn)化算法延續(xù)了遺傳算法的一些基本概念,其系統(tǒng)框架如圖2所示。MEA引入了一些新概念,群體、子群體、公告板、趨同、異化等,與遺傳算法不同[6-7]。
圖2 思維進(jìn)化算法系統(tǒng)結(jié)構(gòu)Fig.2 Mind evolutionary algorithm system structure
1)在解空間隨機(jī)生成一定規(guī)模的個(gè)體,搜索得分最高的若干優(yōu)勝個(gè)體和臨時(shí)個(gè)體。
2)分別以優(yōu)勝個(gè)體和臨時(shí)個(gè)體為中心,在每個(gè)個(gè)體的周圍產(chǎn)生一些新的個(gè)體,從而得到若干優(yōu)勝子群體和臨時(shí)群體。
3)在子群體內(nèi)部執(zhí)行趨同操作,直至該子群體成熟,并以該子群體中最優(yōu)個(gè)體的得分作為該子群體的得分。
4)子群體成熟后,將各個(gè)子群體的得分張貼在全局公告板上,子群體之間執(zhí)行異化操作,完成優(yōu)勝群體與臨時(shí)子群體間的替換、廢棄、子群體中個(gè)體釋放的過(guò)程,從而計(jì)算全局最優(yōu)個(gè)體及其得分。
1)根據(jù)BP神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),將解空間映射到編碼空間。編碼長(zhǎng)度s為
式中:n為輸入節(jié)點(diǎn)數(shù);m為輸出節(jié)點(diǎn)數(shù);l為隱含層節(jié)點(diǎn)數(shù)。
2)定義迭代次數(shù)iter、定義種群大小popsize,預(yù)分配優(yōu)勝子群體bestsize和臨時(shí)子群體tempsize大小。子群體SG大小為
3)選取各個(gè)個(gè)體和種群的得分函數(shù)val。
式中:A2為每次迭代后輸出層的輸出值;T為期望輸出;SE為均方差。由于種群需要篩選得分最高值,所以適應(yīng)度函數(shù)val取期望值與實(shí)際每次迭代輸出值的均方差倒數(shù)。
4)不斷迭代,輸出最優(yōu)個(gè)體,并以此作為BP網(wǎng)絡(luò)的權(quán)值和閾值,訓(xùn)練網(wǎng)絡(luò)。具體的算法流程如圖3所示。
圖3 MEA優(yōu)化BP流程Fig.3 Flow chart of MEA optimizing BP
構(gòu)造訓(xùn)練樣本是影響模型能否精確預(yù)測(cè)天然氣負(fù)荷的關(guān)鍵步驟之一。經(jīng)分析得知?dú)v史負(fù)荷、氣溫和日期對(duì)負(fù)荷影響較大[8-9],所以模型采用7個(gè)輸入量,分別為預(yù)測(cè)日前4天天然氣歷史用量x(n-4)、x(n-3)、x(n-2)、x(n-1),前一天的最高溫度 Tmax(n-1)、最低溫度 Tmin(n-1)和前一天 day(n-1)日期量化系數(shù)。輸出量為1個(gè),即預(yù)測(cè)日天然氣用量。
為了驗(yàn)證該組合算法的有效性和可行性,選取銀川市某縣2015年2月份到4月份89天的天然氣數(shù)據(jù),同時(shí)還整理了同期的最高溫度最低溫度,并把周一至周五歸為工作日,量化為0.5,周六周天為休息日,量化為0.7,一共89組數(shù)據(jù),如表1所示;按照上述數(shù)據(jù)構(gòu)造方法可得到85組重構(gòu)數(shù)據(jù),其中前78組數(shù)據(jù)為模型學(xué)習(xí)數(shù)據(jù),后7組數(shù)據(jù)為模型測(cè)試數(shù)據(jù),如表2所示;利用Matlab自帶的mapminmax函數(shù)把數(shù)據(jù)歸一到[-1,1]之間,最后把輸出數(shù)據(jù)反歸一為實(shí)際天然氣數(shù)據(jù)。
表1 銀川市某縣2—4月份天然氣用量Tab.1 Gas consumption of a certain county between Feb.to Apr.
表2 重構(gòu)得到的輸入和輸出數(shù)據(jù)Tab.2 Reconstruction of the input and output data
網(wǎng)絡(luò)的輸入輸出已經(jīng)確定為7-1模式,隱含層神經(jīng)元的數(shù)目的確定關(guān)系著整個(gè)模型的預(yù)測(cè)精度。隱含層神經(jīng)元的確定尚無(wú)具體公式確定,只能根據(jù)經(jīng)驗(yàn)公式和實(shí)驗(yàn)驗(yàn)證來(lái)確定,如Hecht-Nielsen的“2N+1”(N為輸入節(jié)點(diǎn)數(shù))法和經(jīng)驗(yàn)公式 n=(n為隱含層節(jié)點(diǎn)數(shù),ni為輸入節(jié)點(diǎn)數(shù),no為輸出節(jié)點(diǎn)數(shù),a為1~10之間的常數(shù))。本文采用的是參考經(jīng)驗(yàn)公式值實(shí)驗(yàn)試湊法,最后隱含層神經(jīng)網(wǎng)數(shù)目確定為12。因此最終模型為MEA-BP(7-12-1)。MEA算法中設(shè)置種群大小為100,優(yōu)勝子種群和臨時(shí)子種群分別為5,迭代次數(shù)為100,網(wǎng)絡(luò)訓(xùn)練達(dá)到最優(yōu)。
通過(guò)圖4和圖5可以看出,經(jīng)過(guò)若干趨同操作,各個(gè)子種群已成熟,得分不再增加,最后再通過(guò)異化,得到最優(yōu)權(quán)值和閾值,帶入網(wǎng)絡(luò)訓(xùn)練,得出2015/4/24到2015/4/30 7天的預(yù)測(cè)值。2種模型預(yù)測(cè)結(jié)果比較如圖6所示。
圖4 初始優(yōu)勝子種群趨同過(guò)程Fig.4 Convergence process of initial superior population
圖5 初始臨時(shí)子種群趨同過(guò)程Fig.5 Convergence process of initial temporary population
圖6 天然氣負(fù)荷預(yù)測(cè)對(duì)比Fig.6 Contrast of natural gas consumption forecasting
表3 天然氣負(fù)荷預(yù)測(cè)值與實(shí)際值比較Tab.3 Comparison between the actual load and predicted gas load
(1)由圖6和表3得知,在短期負(fù)荷預(yù)測(cè)上,MEA-BP模型預(yù)測(cè)精度更高,平均相對(duì)誤差在5%以內(nèi),而單一的BP模型預(yù)測(cè)值的平均相對(duì)誤差為8.5%。
(2)思維進(jìn)化算法對(duì)神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值的優(yōu)化對(duì)整體網(wǎng)絡(luò)以后的學(xué)習(xí)過(guò)程起到了促進(jìn)作用,與未優(yōu)化前相比,每個(gè)預(yù)測(cè)點(diǎn)幾乎都提高了誤差精度,整體平均相對(duì)誤差提高了3.6%。體現(xiàn)了思維算法在優(yōu)化上的優(yōu)越性。
(3)思維進(jìn)化算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)充分體現(xiàn)了MEA的全局搜索性,彌補(bǔ)了單一BP神經(jīng)網(wǎng)絡(luò)局部性和過(guò)擬合給預(yù)測(cè)中帶來(lái)的不足,提升了整個(gè)模型的預(yù)測(cè)效果。
將思維進(jìn)化算法與BP神經(jīng)網(wǎng)絡(luò)理論的建模思想結(jié)合建立燃?xì)舛唐谪?fù)荷預(yù)測(cè)模型,避免了單一BP模型的不足,同時(shí)反映出燃?xì)庳?fù)荷的非線性特性。利用改進(jìn)后組合模型進(jìn)行實(shí)地天然氣負(fù)荷預(yù)測(cè),實(shí)際仿真證明,MEA優(yōu)化后的BP模型在短期負(fù)荷預(yù)測(cè)中有較高精度,更具有優(yōu)越性和可行性。
[1]王樹(shù)剛,王繼紅,端木琳,等.城市燃?xì)鈿庳?fù)荷的短期預(yù)測(cè)[J].天然氣工業(yè),2010(5):104-107,148-149.
[2]焦文玲,金佳賓,廉樂(lè)明,等.時(shí)間序列分析在城市天然氣短期負(fù)荷預(yù)測(cè)中的應(yīng)用[J].哈爾濱建筑大學(xué)學(xué)報(bào),2001,34(4):79-82.
[3]張明光,劉連國(guó),王磊,等.基于神經(jīng)網(wǎng)絡(luò)的燃?xì)庑r(shí)負(fù)荷預(yù)測(cè)[J].山東建筑大學(xué)學(xué)報(bào),2010,25(2):206-209.
[4]楊愛(ài)萍,鄧連杰,劉鳳國(guó).城市燃?xì)庳?fù)荷預(yù)測(cè)技術(shù)應(yīng)用分析[J].煤氣與熱力,2011,31(9):39-41.
[5]焦文玲,朱寶成,馮玉剛.基于BP神經(jīng)網(wǎng)絡(luò)城市燃?xì)舛唐谪?fù)荷預(yù)測(cè)[J].煤氣與熱力,2006,26(12):12-15.
[6]謝克明,高廷玉,謝珺.思維進(jìn)化算法的收斂性研究[J].太原理工大學(xué)學(xué)報(bào),2007,38(3):189-192.
[7]何小娟,曾建潮,徐玉斌.基于思維進(jìn)化算法的徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)優(yōu)化[J].計(jì)算機(jī)工程,2004,30(9):72-73,78.
[8]姚健,周偉國(guó),張中秀.人工神經(jīng)網(wǎng)絡(luò)法燃?xì)馊肇?fù)荷預(yù)測(cè)輸入變量選取[J].煤氣與熱力,2010,30(1):28-30.
[9]焦文玲,鄒濤,鞏曉峰,等.燃?xì)馊肇?fù)荷影響因素的相關(guān)分析和偏相關(guān)分析[J].煤氣與熱力,2010,30(5):1-5.