国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡的供暖系統(tǒng)熱負荷預測模型

2014-07-03 06:08張經(jīng)博王朝霞
兵器裝備工程學報 2014年4期
關鍵詞:權值遺傳算法種群

張經(jīng)博,郭 凌,王朝霞,劉 凌

(1.后勤工程學院,重慶 401311;2. 65133 部隊,沈陽 110000;3.重慶大學,重慶 400000;4.重慶工程職業(yè)技術學院,重慶 400055)

供暖系統(tǒng)的熱負荷與室外溫度、太陽輻射、風向和風速等氣候條件關系密切。熱負荷預測主要是指根據(jù)以往熱負荷溫度的實際情況,同時考慮影響熱負荷溫度相對權重較高的因素,如室外溫度、日照時長、工作作息情況等因素,對未來某一時間段內(nèi)或某一具體時刻的需求量作出估計或范圍性推測,從而實現(xiàn)對供暖系統(tǒng)輔助決策的數(shù)據(jù)支持;預測精度不夠高是現(xiàn)有預測模型的主要缺點,同時供暖系統(tǒng)的供暖量的變化波動大時自適應能力較差[1]。根據(jù)供暖系統(tǒng)對熱負荷預測的預測精度要求高的實際需求,本文提出的預測模型是針對下一個工作日的短期熱負荷預測,主要選擇了前3個工作日的負荷溫度、室外溫度、日照時長作為輸入?yún)?shù);本文提出的基于遺傳算法(genetic algorithm,GA)優(yōu)化的BP 神經(jīng)網(wǎng)絡(back propagation neural network)對供暖系統(tǒng)熱負荷預測,將遺傳算法自適應性和全局優(yōu)化能力強的優(yōu)點,和BP神經(jīng)網(wǎng)絡局部尋優(yōu)能力強的優(yōu)點相互結(jié)合,從而避免了BP神經(jīng)網(wǎng)絡容易陷入局部極小的缺點,大大提高了預測的精度,從對比仿真實驗可以驗證提出的方法的誤差比BP 神經(jīng)網(wǎng)絡預測出的誤差要小。

1 遺傳算法

1.1 遺傳算法的基本原理

遺傳算法(genetic algorithm,GA)是一種基于自然選擇和基因遺傳學原理的優(yōu)化搜索方法,是模擬達爾文的遺傳選擇和自然淘汰的生物進化原理被引入到待優(yōu)化參數(shù)形成的編碼串群體中,按照選取好的適應值函數(shù)和一系列的遺傳操作對個體進行篩選,從而保留下適應值高的個體,組成新的群體。通過這種方式產(chǎn)生的新群體不僅遺傳了上一代的大量信息,而且包含優(yōu)于上一代的新個體。這樣一代一代遺傳下去,群體中個體的適應值不斷提高,直至滿足一定的條件為止。

遺傳算法是從一個種群開始的,這個種群代表了問題的一個可行解。而種群則由一定數(shù)目的個體組成,每個個體通過基因編碼產(chǎn)生。在生物學里,每個個體是帶有特征的染色體實體。由于染色體是多個基因的集合,所以首先要進行編碼,把表現(xiàn)型編碼成基因型。在每一代的進化中,個體的選擇是由種群中的個體適應值大小來決定的,由遺傳算子進行組合、交叉和變異,產(chǎn)生出新的種群。這個過程使種群像遺傳選擇和自然進化一樣,讓新種群更加適應于環(huán)境,不適應的種群逐步被淘汰,直到產(chǎn)生出最優(yōu)種群或達到迭代次數(shù)后形成末代種群,末代種群中的最優(yōu)個體經(jīng)過解碼,就可以作為問題近似最優(yōu)解。

1.2 遺傳算法的操作

Holland 的遺傳算法[2],通常稱為簡單遺傳算法,主要特點是操作簡單和作用強大,基本遺傳操作如下:

1)選擇操作

選擇操作是指以一定概率選擇舊種群中的個體到新種群中,個體被選中的概率跟適應值有關,個體適應值越大,被選中的概率就越大。

2)交叉操作

交叉操作是指從種群中選擇兩個個體,通過兩個個體的染色體的交叉組合,來產(chǎn)生新個體。交叉過程為從種群中任選兩個個體,隨機選擇個體的一點或多點染色體位置進行交換。交叉操作如圖1 所示。

圖1 交叉操作

3)變異操作

變異操作是指從種群中任選一個個體,選擇個體的染色體中的一點進行變異產(chǎn)生新個體。變異操作如圖2 所示。

圖2 變異操作

2 遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡

由于BP 神經(jīng)網(wǎng)絡局部尋優(yōu)能力強,但缺點是易于陷入局部極小;遺傳算法則具有自適應性、全局優(yōu)化性和隱含并行性,但缺點是局部尋優(yōu)能力不強。本文提出了一種BP 神經(jīng)網(wǎng)絡與遺傳算法相結(jié)合的算法,用遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡的權值和閾值,解決BP 神經(jīng)網(wǎng)絡易陷入局部極小的問題,然后利用優(yōu)化后的權值和閾值經(jīng)過BP 網(wǎng)絡訓練來得到最優(yōu)解[3]。

遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡分為BP 神經(jīng)網(wǎng)絡結(jié)構確定、遺傳算法優(yōu)化和BP 神經(jīng)網(wǎng)絡預測3 個步驟。其中,BP 神經(jīng)網(wǎng)絡結(jié)構確定由問題和擬合函數(shù)的參數(shù)個數(shù)決定的,進而遺傳算法個體的長度才能得以確定;遺傳算法優(yōu)化是利用遺傳算法對BP 網(wǎng)絡的權值和閾值進行優(yōu)化篩選,由于種群中的每個個體都包含了一個網(wǎng)絡所有權值和閾值,通過適應度函數(shù)計算出每個個體的適應值,通過遺傳算法的選擇,交叉和變異等操作后找到最優(yōu)的適應值所對應的個體;BP 神經(jīng)網(wǎng)絡預測是指通過遺傳算法篩選出最優(yōu)個體,然后將最優(yōu)個體賦值給BP 網(wǎng)絡初始權值和閾值,BP 網(wǎng)絡基于初始權值和閾值進行訓練后得到預測輸出。從而使新生成的算法既要有神經(jīng)網(wǎng)絡的強自學習能力,又有遺傳算法的強全局搜索能力[4],其算法流程圖如圖3 所示。

通過遺傳算法來優(yōu)化BP 神經(jīng)網(wǎng)絡的初始權值和閾值,同時提高神經(jīng)網(wǎng)絡的泛化性能,是遺傳算法優(yōu)化神經(jīng)網(wǎng)絡的主要方法,通過遺傳算法優(yōu)化后的BP 神經(jīng)網(wǎng)絡,具有更好的預測輸出結(jié)果[5],遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡的具體實現(xiàn)步驟如下:

1)種群初始化

每個個體按照實數(shù)進行編碼,每個遺傳個體由一個實數(shù)串組成,可分為輸入層與隱含層的連接權值、隱含層閾值、隱含層與輸出層連接權值以及輸出層閾值4 個部分,它與某個神經(jīng)網(wǎng)絡權值、閾值、隱節(jié)點一一對應。在網(wǎng)絡結(jié)構已經(jīng)確定的情況下,就組成了一個權值、閾值和結(jié)構都確定的BP 網(wǎng)絡,同時每個個體包含了BP 網(wǎng)絡全部的權值和閾值[6]。

圖3 遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡算法的流程

2)適應值函數(shù)計算

根據(jù)種群初始化得到的BP 神經(jīng)網(wǎng)絡的初始權值和閾值[7],這樣就避免了BP 神經(jīng)網(wǎng)絡隨機生成初始權值和閾值的隨機性,避免了BP 網(wǎng)絡容易陷入局部極小的缺點,同時利用訓練數(shù)據(jù)對BP 神經(jīng)網(wǎng)絡進行訓練,訓練后的BP 神經(jīng)網(wǎng)絡預測出輸出結(jié)果,可將預測輸出值和期望輸出值之間的平方誤差和作為個體的適應值F

式中:n 為網(wǎng)絡輸出節(jié)點數(shù);yi為BP 神經(jīng)網(wǎng)絡第i 個節(jié)點的期望輸出;oi為第i 個節(jié)點的預測輸出;k 為系數(shù)。

3)選擇算子

本文的遺傳算法選擇操作是以輪盤賭法[8]為基礎,即基于每個個體的選擇概率等于其適應度與整個種群中個體適應度和之比的選擇策略,個體適應度越高,被選中的可能性就越大,進入下一代的概率就越大。定義每個個體i 的選擇概率pi

式中:Fi為個體i 的適應值,由于適應值越小越好,所以在個體選擇前對適應值求倒數(shù);k 為系數(shù);N 為種群個體數(shù)目。

4)交叉算子

交叉算子主要包括單點交叉、多點交叉、均勻交叉、算術交叉、啟發(fā)式交叉等,由于個體采用實數(shù)編碼,所以交叉操作方法采用實數(shù)交叉法,第k 個染色體ak和第l 個染色體al在j 位的交叉操作方法如下:

式(4)、式(5)中,b 為[0,1]間的隨機數(shù)。

5)變異算子

將父代群體中的每個個體以某種概率(即變異概率)改變某個個體的某些基因座上的基因值為其他的等位基因。對每次變異的結(jié)果,還原出神經(jīng)網(wǎng)絡并進行性能評估。如果后代優(yōu)于父代則結(jié)束該父代的變異,否則,對該父代進行下一次變異,直到找到優(yōu)于其父代的后代。

變異操作是對實數(shù)編碼選取第i 個個體的第j 個基因aij進行變異,變異操作方法如下

式中:amax為基因aij的上界;amin為基因aij的下界;f(g)=r2(1-g/Gmax);r2為一個隨機數(shù);g 為當前迭代次數(shù);Gmax是最大迭代次數(shù);r 為[0,1]之間的隨機數(shù)。

6)結(jié)束

根據(jù)網(wǎng)絡訓練后得到的誤差,如果誤差滿足要求,或者達到一定的進化代數(shù),則進化停止;否則返回步驟(3)。

3 仿真實例

這里分別用BP 神經(jīng)網(wǎng)絡和遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡2 種方法對供暖系統(tǒng)熱負荷進行預測。通過對影響熱負荷變化的各種因素進行分析,發(fā)現(xiàn)可能的輸入變量有:在供暖系統(tǒng)方面,供水流量、供水溫度、回水溫度等;在外部條件方面,室外溫度、風速風向、太陽照射率、氣壓等,在時間性方面,是否工作日、白天還是晚上等[9]。根據(jù)數(shù)據(jù)獲取的難易程度和數(shù)據(jù)來源情況,本文在選擇影響供暖負荷的輸入變量時,綜合考慮、簡化各輸入變量,最后確定將是否工作日、室外溫度、日照時數(shù)和前3 天的負荷溫度等6 個影響因素作為輸入變量。

熱負荷預測模型的輸出變量的選取是根據(jù)系統(tǒng)不同的運行方式來選擇的。一般情況下的控制方式主要有2 種:一是以控制回水壓差為主的控制方式,采用這種控制方式的供暖系統(tǒng)預測模型一般選擇供回水壓差作為輸出變量;另一種是以控制溫度為主的運行方式,一般選擇供回水溫度作為輸出變量。本論文針對的是以控制溫度為主的供暖系統(tǒng),因此把供水溫度,也就是負荷溫度作為輸出變量。

本文對收集的500 個供暖系統(tǒng)熱負荷樣本數(shù)據(jù)進行學習和預測,其中400 個樣本數(shù)據(jù)作為學習樣本,另外100 個樣本數(shù)據(jù)作為預測樣本[10]。部分輸入樣本如表1 所示。

為了避開Sigmoid 函數(shù)的飽和區(qū)域,使輸出量隨著輸入量的變化較為明顯,在仿真實驗中,先對樣本數(shù)據(jù)作歸一化處理。本文選取的BP 神經(jīng)網(wǎng)絡為3 層,網(wǎng)絡為6-5-1 結(jié)構,輸入層有6 個節(jié)點,隱含層有5 個節(jié)點,輸出層僅有1 個節(jié)點。本文的BP 算法采用L-M 算法,學習率選為0.1。在遺傳算法的優(yōu)化過程中,種群規(guī)模取40,最大進化代數(shù)取80[11]。

表1 部分輸入樣本

用遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡算法對400 個學習樣本數(shù)據(jù)進行訓練[12],得到的訓練結(jié)果如圖4 所示。其中遺傳算法的優(yōu)化過程如圖5 所示。

圖4 遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡的訓練結(jié)果

由圖4 可知其算法的訓練誤差為294.958 3。用訓練好的網(wǎng)絡對100 個預測樣本進行預測[13],其預測的結(jié)果如圖6所示。

其預測得到的絕對誤差[14]結(jié)果為73.965 3,相對誤差結(jié)果為0.017 3,如圖7 和圖8 所示。

圖7 遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡的預測結(jié)果的絕對誤差

圖8 遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡算法的預測結(jié)果的相對誤差

作為對比試驗,用BP 神經(jīng)網(wǎng)絡對400 個學習樣本數(shù)據(jù)進行訓練[15],得到的訓練結(jié)果如圖9 所示。

圖9 BP 神經(jīng)網(wǎng)絡算法的訓練結(jié)果

由圖9 可知其算法的訓練誤差為305.109 8。用訓練好的網(wǎng)絡對100 個預測樣本進行預測,其預測的結(jié)果如圖10所示。

圖10 BP 神經(jīng)網(wǎng)絡算法的預測結(jié)果

其預測得到的絕對誤差結(jié)果為85.232 7,相對誤差結(jié)果為0.019 7。

由上面的實驗結(jié)果可看到,遺傳算法優(yōu)化的BP 神經(jīng)網(wǎng)絡算法的訓練結(jié)果的誤差比BP 神經(jīng)網(wǎng)絡算法的訓練結(jié)果的誤差要小,遺傳算法優(yōu)化的BP 神經(jīng)網(wǎng)絡算法的預測結(jié)果的絕對誤差和相對誤差也比BP 神經(jīng)網(wǎng)絡算法的訓練結(jié)果的誤差要小。其原因是BP 算法容易陷入局部極小點,而遺傳算法搜索的是全局極小點,所以遺傳算法優(yōu)化的BP 神經(jīng)網(wǎng)絡算法要比BP 神經(jīng)網(wǎng)絡算法得到更好的訓練結(jié)果,其預測結(jié)果也更好,如表2 所示。

表2 兩種方法的誤差對比表

4 結(jié)束語

本文針對供暖系統(tǒng)熱負荷短期預測問題,利用改進的遺傳算法對BP 神經(jīng)網(wǎng)絡的初始權值和閾值進行優(yōu)化,并在遺傳進化過程中采取保留最佳個體的方法。該方法克服了一般BP 網(wǎng)絡初始權值的隨機性和網(wǎng)絡結(jié)構訓練過程中的所帶來的網(wǎng)絡震蕩,以及一般BP 網(wǎng)絡容易陷入局部極小等問題。從以上的結(jié)果分析可知,對于供暖系統(tǒng)熱負荷短期預測,本文所采用的遺傳算法優(yōu)化的BP 神經(jīng)網(wǎng)絡具有全局尋優(yōu)能力,預測精度高,絕對和相對誤差較小,收斂速度快,能夠有效針對供暖系統(tǒng)熱負荷進行短期預測。

[1]康勝文.兩種熱負荷預測方法的比較[J]. 區(qū)域供暖,2004(2):22-24.

[2]李敏強.遺傳算法的基本理論與應用[M].北京:科學出版社,2002.

[3]王崇駿,于汶滌,陳兆乾,等.一種基于遺傳算法的BP 神經(jīng)網(wǎng)絡算法及其應用[J].南京大學學報:自然科學版,2003(5):459-466.

[4]周明,孫樹棟.遺傳算法原理及應用[M].北京.國防工業(yè)出版社,1998:11-12.

[5]劉嚴崴.基于神經(jīng)網(wǎng)絡的供熱系統(tǒng)負荷預測[D].天津:天津大學,2009.

[6]楊梅,卿曉霞,王波.基于改進遺傳算法的神經(jīng)網(wǎng)絡優(yōu)化方法[J].計算機仿真,2009(5):198-201.

[7]唐麗杰.城市供暖系統(tǒng)的數(shù)據(jù)采集與算法研究[D].濟南:山東輕工業(yè)學院,2007.

[8]雷英杰,張善文,李續(xù)武,等. 遺傳算法工具箱及應用[M].北京:中國水利水電出版社,2005.

[9]歐陽玉梅,馬志強,方若森.基于MATLAB 的遺傳神經(jīng)網(wǎng)絡的設計與實現(xiàn)[J].信息技術,2008(06): 73-76.

[10]彭嵐,何大鵬,李友榮.基于BP 神經(jīng)網(wǎng)絡的工業(yè)鍋爐房負荷預測[J].工業(yè)加熱,2006(5): 31-33.

[11]陳路路.基于負荷預測的集中供熱系統(tǒng)能效研究[D].濟南:山東建筑大學,2013.

[12]李超.基于自適應遺傳算法的BP 神經(jīng)網(wǎng)絡預測研究及應用[D].西安:陜西師范大學,2012.

[13]聞新,周露.MATLAB 神經(jīng)網(wǎng)絡應用設計[M].北京:科學出版社,2002:207-302.

[14]高雋.人工神經(jīng)網(wǎng)絡原理及仿真實例[M].2 版.北京:機械工業(yè)出版社,2007:44-48.

[15]周開利,康耀紅.神經(jīng)網(wǎng)絡模型及其MATLAB 仿真程序設計[M].北京:清華大學出版社,2004.

[16]鄧代強,朱永建,李健,等.基于BP 神經(jīng)網(wǎng)絡的充填料漿流變參數(shù)預測分析[J].武漢理工大學學報,2012(7):82-87.

猜你喜歡
權值遺傳算法種群
山西省發(fā)現(xiàn)刺五加種群分布
一種融合時間權值和用戶行為序列的電影推薦模型
基于雙種群CSO算法重構的含DG配網(wǎng)故障恢復
基于5G MR實現(xiàn)Massive MIMO權值智能尋優(yōu)的技術方案研究
基于遺傳算法的高精度事故重建與損傷分析
基于遺傳算法的智能交通燈控制研究
強規(guī)劃的最小期望權值求解算法?
計算機測量與控制(2018年3期)2018-03-27
由種群增長率反向分析種群數(shù)量的變化
一種基于遺傳算法的聚類分析方法在DNA序列比較中的應用