下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、,人工智能 在電力系統(tǒng)中的應(yīng)用,孟安波,第一章 概述,人工智能是那些與人的思維相關(guān)的活動(dòng),諸如決策、問題求解和學(xué)習(xí)等的自動(dòng)化(Bellman,1978); 人工智能是一種計(jì)算機(jī)能夠思維,使機(jī)器具有智力的激動(dòng)人心的新嘗試(Haugeland,1985); 人工智能是那些使知覺、推理和行為成為可能的計(jì)算的研究(Winston, 1992); 人工智能是關(guān)于人造物的智能行為,而智能行為包括知覺、推理、學(xué)習(xí)、交流的行為(Nilsson,1998)。 像人一樣思考的系統(tǒng)、像人一樣行動(dòng)的系統(tǒng)、理性地思考、行動(dòng)的系統(tǒng)( Stuart Russell, 2003)。,1.1 人工智能定義,1.2人工智能的研究
2、途徑與研究領(lǐng)域,專家系統(tǒng) (Expert Systems) 人工神經(jīng)網(wǎng)絡(luò) (Artificial Neural Networks) 模糊邏輯 (Fuzzy Logic) 進(jìn)化算法 (如:遺傳算法Genetic Algorithm, 粒子群Swarm Particle,禁忌搜索Tabu Search, 模擬退火算法Simulated Annealing,) 多智能體系統(tǒng) (Multi-agent system),心理模擬,符號(hào)推演 生理模擬,神經(jīng)計(jì)算 行為模擬,控制進(jìn)化 群體模擬,仿生計(jì)算,1.3人工智能在電力系統(tǒng)的應(yīng)用領(lǐng)域,機(jī)組啟停 Unit Commitment 維護(hù)計(jì)劃 Maintenan
3、ce scheduling 負(fù)荷預(yù)測 Load Forecasting 發(fā)電控制與保護(hù) Generation control and protection 潮流優(yōu)化 Optimal Power Flow Analysis 電力系統(tǒng)安全分析 Security Analysis 電力系統(tǒng)穩(wěn)定分析 Stability Analysis 無功優(yōu)化分配 Var dispatch and planning 控制優(yōu)化 Optimization of self-adaptive control,繼電保護(hù) Relaying protection 經(jīng)濟(jì)調(diào)度 Economic dispatch 變電所運(yùn)行控制 Su
4、bstation switching and control 系統(tǒng)恢復(fù)供電 System reconfiguration and restoration 電力質(zhì)量控制 Power quality Control 系統(tǒng)設(shè)計(jì)優(yōu)化 System Design Optimization 電力規(guī)劃 planning for electric Power 電氣設(shè)備故障診斷 Fault diagnosis for electric facilities,1.3人工智能在電力系統(tǒng)的應(yīng)用領(lǐng)域,第二章 神經(jīng)網(wǎng)絡(luò)及其在電力系統(tǒng)中的應(yīng)用,人工神經(jīng)網(wǎng)絡(luò)是集腦科學(xué)、神經(jīng)心理學(xué)和信息科學(xué)等多學(xué)科的交叉研究領(lǐng)域,是近年來高科
5、技領(lǐng)域的一個(gè)研究熱點(diǎn)。它的研究目標(biāo)是通過研究人腦的組成機(jī)理和思維方式,探索人類智能的奧秘,進(jìn)而通過模擬人腦的結(jié)構(gòu)和工作模式,使機(jī)器具有類似人類的智能。它已在模式識(shí)別、機(jī)器學(xué)習(xí)、專家系統(tǒng)等多個(gè)方面得到應(yīng)用,成為人工智能研究中的活躍領(lǐng)域。本章將簡要介紹神經(jīng)網(wǎng)絡(luò)基本的概念、模型以及學(xué)習(xí)算法以及應(yīng)用實(shí)例。,2.1 神經(jīng)網(wǎng)絡(luò)的基本概念及組成特性,神經(jīng)元及其突觸是神經(jīng)網(wǎng)絡(luò)的基本器件。因此,模擬生物神經(jīng)網(wǎng)絡(luò)應(yīng)首先模擬生物神經(jīng)元。在人工神經(jīng)網(wǎng)絡(luò)中,神經(jīng)元常被稱為“處理單元”。有時(shí)從網(wǎng)絡(luò)的觀點(diǎn)出發(fā)常把它稱為“節(jié)點(diǎn)”。人工神經(jīng)元是對(duì)生物神經(jīng)元的一種形式化描述。神經(jīng)元主要由三部分構(gòu)成:(1)細(xì)胞體;(2)軸突;(3
6、)樹突,2.2 人工神經(jīng)網(wǎng)絡(luò)的特性,高度的并行性 ANN是由許多相同的簡單處理單元并聯(lián)組合而成,雖然每個(gè)單元的功能簡單,但大量簡單處理單元的并行活動(dòng),使其對(duì)信息的處理能力與效果驚人。 高度的非線性全局作用 ANN每個(gè)神經(jīng)元接受大量其它神經(jīng)元的輸入,并通過并行網(wǎng)絡(luò)產(chǎn)生輸出,影響其他神經(jīng)元。網(wǎng)絡(luò)之間的這種互相制約和互相影響,實(shí)現(xiàn)了從輸入狀態(tài)到輸出狀態(tài)空間的非線性映射。從全局的觀點(diǎn)來看,網(wǎng)絡(luò)整體性能不是網(wǎng)絡(luò)局部性能的簡單迭加,而表現(xiàn)出某種集體性的行為。 良好的容錯(cuò)性與聯(lián)想記憶功能 ANN通過自身的網(wǎng)絡(luò)結(jié)構(gòu)能夠?qū)崿F(xiàn)對(duì)信息的記憶。而所記憶的信息是存儲(chǔ)在神經(jīng)元之間的權(quán)值中。從單個(gè)權(quán)值中看不出所儲(chǔ)存的信息內(nèi)
7、容,因而是分布式的存儲(chǔ)方式。這使得網(wǎng)絡(luò)具有良好的容錯(cuò)性,并能進(jìn)行聚類分析、特征提取、缺損模式復(fù)原等模式信息處理工作;又宜于模式分類、模式聯(lián)想等識(shí)別工作。 十分強(qiáng)的自適應(yīng)、自學(xué)習(xí)功能 ANN可以通過訓(xùn)練和學(xué)習(xí)來獲得網(wǎng)絡(luò)的權(quán)值與結(jié)構(gòu),呈現(xiàn)出很強(qiáng)的學(xué)習(xí)能力和對(duì)環(huán)境的自適應(yīng)能力。,2.3 人工神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方法,監(jiān)督學(xué)習(xí)(有教師學(xué)習(xí)) 如圖所示,這種學(xué)習(xí)方式需要外界存在一個(gè)“教師” ,他可對(duì)給定一組輸入提供應(yīng)有的輸出結(jié)果,這組已知的輸入-輸出數(shù)據(jù)稱為訓(xùn)練樣本集,學(xué)習(xí)系統(tǒng)(神經(jīng)網(wǎng)絡(luò))可根據(jù)已知輸出與實(shí)際輸出之間的差值(誤差信號(hào))來調(diào)節(jié)系統(tǒng)參數(shù) 非監(jiān)督學(xué)習(xí)(無教師學(xué)習(xí)),2.3 人工神經(jīng)網(wǎng)絡(luò)的分類,前向網(wǎng)
8、絡(luò)中,各神經(jīng)元節(jié)點(diǎn)接受前一層的輸出信號(hào),并將本層的輸出作為下一層的輸入,其特點(diǎn)是信號(hào)的流向是從輸入流向輸出。在ANN的實(shí)際應(yīng)用中,8090的ANN模型是采用BP網(wǎng)絡(luò)或它的變化形式,它也是前向網(wǎng)絡(luò)的核心部分、體現(xiàn)了ANN精華的部分。,前向神經(jīng)網(wǎng)絡(luò),2.3 人工神經(jīng)網(wǎng)絡(luò)的分類,反饋神經(jīng)網(wǎng)絡(luò),反饋網(wǎng)絡(luò)中,輸出信號(hào)通過與輸入連接而返回到輸入端,從而形成一個(gè)回路。在前向網(wǎng)絡(luò)中,有單層感知器、自適應(yīng)線性網(wǎng)絡(luò)和BP網(wǎng)絡(luò)。在反饋網(wǎng)絡(luò)中,有離散型和連續(xù)型霍普菲爾德網(wǎng)絡(luò)。,2.4 BP神經(jīng)網(wǎng)絡(luò),2.4.1 BP神經(jīng)網(wǎng)絡(luò)概述 BP 網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)是目前應(yīng)用最為廣泛和成功的神經(jīng)網(wǎng)絡(luò)之一。它是在1986年由Rumelha
9、nt 和 McClelland 提出的一種多層網(wǎng)絡(luò)的“逆推”學(xué)習(xí)算法。其基本思想是,學(xué)習(xí)過程由信號(hào)的正向傳播與誤差的反向傳播兩個(gè)過程組成。正向傳播時(shí),輸入樣本從輸入層傳入,經(jīng)隱層逐層處理后傳向輸出層。若輸出層的實(shí)際輸出與期望輸出不符,則轉(zhuǎn)向誤差的反向傳播階段。誤差的反向傳播是將輸出誤差以某種形式通過隱層向輸入逐層反傳,并將誤差分?jǐn)偨o各層的所有單元,從而獲得各層單元的誤差信號(hào),此誤差信號(hào)即作為修正各單元權(quán)值的依據(jù)。這種信號(hào)正向傳播與誤差反向傳播的各層權(quán)值調(diào)整過程是周而復(fù)始地進(jìn)行。權(quán)值不斷調(diào)整的過程,也就是網(wǎng)絡(luò)的學(xué)習(xí)訓(xùn)練過程。此過程一直進(jìn)行到網(wǎng)絡(luò)輸出的誤差減少到可以接受的程度,或進(jìn)行到預(yù)先設(shè)定的學(xué)
10、習(xí)次數(shù)為止。,2.4.2 BP神經(jīng)網(wǎng)絡(luò)應(yīng)用領(lǐng)域,函數(shù)逼近:用輸入矢量和相應(yīng)的輸出矢量訓(xùn)練個(gè)網(wǎng)絡(luò)逼近一個(gè)函數(shù); 模式識(shí)別:用一個(gè)特定的輸出矢量將它與輸入矢量聯(lián)系起來; 分類:把輸入矢量以所定義的合適方式進(jìn)行分類; 數(shù)據(jù)壓縮:減少輸出矢量維數(shù)以便于傳輸或存儲(chǔ)。,2.4 BP神經(jīng)網(wǎng)絡(luò),2.4.3 BP網(wǎng)絡(luò)模型與結(jié)構(gòu),BP網(wǎng)絡(luò)具有一層或多層隱含層,其主要差別也表現(xiàn)在激活函數(shù)上 BP網(wǎng)絡(luò)的激活函數(shù)必須是處處可微的 ,BP網(wǎng)絡(luò)經(jīng)常使用的是S型的對(duì)數(shù)或正切激話函數(shù)和線性函數(shù),2.4 BP神經(jīng)網(wǎng)絡(luò),2.4.4 BP神經(jīng)網(wǎng)路的幾種常見激活函數(shù),閥值型,不帶偏差的閥值型激活函數(shù),帶偏差的閥值型激活函數(shù),2.4 B
11、P神經(jīng)網(wǎng)絡(luò),2.4.4 BP神經(jīng)網(wǎng)路的幾種常見激活函數(shù),線形型,不帶偏差的線性激活函數(shù),帶偏差的線形型激活函數(shù),2.4 BP神經(jīng)網(wǎng)絡(luò),2.4.4 BP神經(jīng)網(wǎng)路的幾種常見激活函數(shù),2.4 BP神經(jīng)網(wǎng)絡(luò),對(duì)數(shù)S型激活函數(shù),雙曲正切S型激活函數(shù),對(duì)數(shù)S型函數(shù)關(guān)系為:,雙曲正切S型函數(shù)關(guān)系:,Sigmoid 型,2.4.5 BP網(wǎng)絡(luò)學(xué)習(xí),2.4 BP神經(jīng)網(wǎng)絡(luò),BP算法的學(xué)習(xí)目的是對(duì)網(wǎng)絡(luò)的連接權(quán)值進(jìn)行調(diào)整,使得調(diào)整后的網(wǎng)絡(luò)對(duì)任一輸入都能得到所期望的輸出。 學(xué)習(xí)過程由正向傳播和反向傳播組成。 正向傳播用于對(duì)前向網(wǎng)絡(luò)進(jìn)行計(jì)算,即對(duì)某一輸入 信息,經(jīng)過網(wǎng)絡(luò)計(jì)算后求出它的輸出結(jié)果。 反向傳播用于逐層傳遞誤差,修
12、改神經(jīng)元間的連接權(quán)值,以使網(wǎng)絡(luò)對(duì)輸入信息經(jīng)過計(jì)算后所得到的輸出能達(dá)到期望的誤差要求。,2.4.5 BP網(wǎng)絡(luò)學(xué)習(xí),2.4 BP神經(jīng)網(wǎng)絡(luò),設(shè)輸入為P,輸人有r個(gè),隱含層內(nèi)有s1個(gè)神經(jīng)元,激話函數(shù)為F1,輸出層內(nèi)有個(gè)s2神經(jīng)元,對(duì)應(yīng)的激活函數(shù)為F2,輸出為A,目標(biāo)矢量力T。,隱含層,輸出層,輸入層,2.4.5 BP網(wǎng)絡(luò)學(xué)習(xí),2.4 BP神經(jīng)網(wǎng)絡(luò),1、信息的正向傳遞,(1)隱含層中第i個(gè)神經(jīng)元的輸出為:,(2)輸出層第k個(gè)神經(jīng)元的輸出為,(3)定義誤差函數(shù)為:,2.4.5 BP網(wǎng)絡(luò)學(xué)習(xí),2.4 BP神經(jīng)網(wǎng)絡(luò),1、誤差反向傳播,(1)輸出層的權(quán)值變化:,對(duì)從第i個(gè)輸入到第k個(gè)輸出的權(quán)值有:,其中:,:學(xué)
13、習(xí)速率,過大容易震蕩,過小調(diào)整過慢;,:訓(xùn)練樣本對(duì)目標(biāo)輸出;,:神經(jīng)網(wǎng)絡(luò)實(shí)際輸出;,:輸出層神經(jīng)元傳遞函數(shù)的導(dǎo)數(shù);,:誤差;,2.4.5 BP網(wǎng)絡(luò)學(xué)習(xí),2.4 BP神經(jīng)網(wǎng)絡(luò),1、誤差反向傳播,(2)輸出層的閥值變化:,其中:,!注意:輸出層的權(quán)值變化與輸出層的閾值變化的差別,2.4.5 BP網(wǎng)絡(luò)學(xué)習(xí),2.4 BP神經(jīng)網(wǎng)絡(luò),1、誤差反向傳播,(3)隱含層的權(quán)值變化:,對(duì)從第j個(gè)輸入到第i個(gè)輸出的權(quán)值有:,其中:,(4)隱含層的閾值變化:,2.4.6 BP網(wǎng)絡(luò)的限制與不足及改進(jìn),2.4 BP神經(jīng)網(wǎng)絡(luò),1 不足 需要較長的訓(xùn)練時(shí)間 對(duì)于一些復(fù)雜的問題,BP算法可能要進(jìn)行幾小時(shí)甚至更長的時(shí)間的訓(xùn)練。這
14、主要是由于學(xué)習(xí)速率太小所造成的??刹捎米兓膶W(xué)習(xí)速率或自適應(yīng)的學(xué)習(xí)速率加以改進(jìn)。 完全不能訓(xùn)練 這主要表現(xiàn)在網(wǎng)絡(luò)出現(xiàn)的麻痹現(xiàn)象上。在網(wǎng)絡(luò)的訓(xùn)練過程中,當(dāng)其權(quán)值調(diào)得過大,可能使得所有的或大部分神經(jīng)元的加權(quán)總和偏大,這使得激活函數(shù)的輸入工作在S型轉(zhuǎn)移函數(shù)的飽和區(qū),從而導(dǎo)致其導(dǎo)數(shù)非常小,從而使得對(duì)網(wǎng)絡(luò)權(quán)值的調(diào)節(jié)過程幾乎停頓下來。通常為了避免這種現(xiàn)象的發(fā)生,一是選取較小的初始權(quán)值,二是采用較小的學(xué)習(xí)速率,但這又增加了訓(xùn)練時(shí)間。,2.4.6 BP網(wǎng)絡(luò)的限制與不足及改進(jìn),2.4 BP神經(jīng)網(wǎng)絡(luò),1 不足 局部極小值 BP 算法可以使網(wǎng)絡(luò)權(quán)值收斂到一個(gè)解,但它并不能保證所求為誤差超平面的全局最小解,很可能是一
15、個(gè)局部極小解。這是因?yàn)锽P算法采用的是梯度下降法,訓(xùn)練是從某一起始點(diǎn)沿誤差函數(shù)的斜面逐漸達(dá)到誤差的最小值。對(duì)于復(fù)雜的網(wǎng)絡(luò),其誤差函數(shù)為多維空間曲面,就像一個(gè)碗,其碗底是最小值點(diǎn)。但是這個(gè)碗的表面是凹凸不平的,因而在對(duì)其訓(xùn)練過程中,可能陷入某一小谷區(qū),而這一小谷區(qū)產(chǎn)生的是一個(gè)局部極小值。由此點(diǎn)向各方向變化均使誤差增加,以致于使訓(xùn)練無法逃出這一局部極小值。,2.4.6 BP網(wǎng)絡(luò)的限制與不足及改進(jìn),2.4 BP神經(jīng)網(wǎng)絡(luò),1 改進(jìn) 增加動(dòng)量項(xiàng) 標(biāo)準(zhǔn)BP算法在調(diào)整權(quán)值時(shí),只按t時(shí)刻誤差的梯度下降方向調(diào)整,而沒有考慮t時(shí)刻以前的梯度方向。為了提高訓(xùn)練速度,可以在權(quán)值調(diào)整公式中加一動(dòng)量項(xiàng),其中a為動(dòng)量系數(shù):
16、,動(dòng)量項(xiàng)反映了以前積累的調(diào)整經(jīng)驗(yàn)。當(dāng)誤差梯度出現(xiàn)局部極小時(shí),雖然 但, 使其跳出局部極小區(qū)域,加快迭代收斂速度。目前,大多數(shù)BP算法中都增加了動(dòng)量項(xiàng),以至于有動(dòng)量項(xiàng)的BP算法成為一種新的標(biāo)準(zhǔn)算法。,2.4.6 BP網(wǎng)絡(luò)的限制與不足及改進(jìn),2.4 BP神經(jīng)網(wǎng)絡(luò),1 改進(jìn) 可變學(xué)習(xí)速度的反向傳播算法,(1)如果平方誤差(在整個(gè)訓(xùn)練集上)在權(quán)值更新后增加了,且超過了某個(gè)設(shè)置的百分?jǐn)?shù)(典型值為1%5%),則權(quán)值更新被取消,學(xué)習(xí)速度被乘以一個(gè)因子(01),并且動(dòng)量系數(shù)(如果有的話)被設(shè)置為0 。 (2)如果平方誤差在權(quán)值更新后減少,則權(quán)值更新被接受,而且學(xué)習(xí)速度將乘以一個(gè)大于1的因子。如果動(dòng)量系數(shù)過去被
17、設(shè)置為0,則恢復(fù)到以前的值。,2.4.6 BP網(wǎng)絡(luò)的限制與不足及改進(jìn),2.4 BP神經(jīng)網(wǎng)絡(luò),1 改進(jìn) 引入陡度因子防止飽和,誤差曲面上存在著平坦區(qū)。其可預(yù)付調(diào)整緩慢的原因在于S轉(zhuǎn)移函數(shù)具有飽和特性。如果在調(diào)整進(jìn)入平坦區(qū)后,設(shè)法壓縮神經(jīng)元的凈輸入,使其輸出退出轉(zhuǎn)移函數(shù)的飽和區(qū),就可改變誤差函數(shù)的形狀,從而使調(diào)整脫離平坦區(qū)。實(shí)現(xiàn)這一思路的具體作法是在轉(zhuǎn)移函數(shù)中引進(jìn)一個(gè)陡度因子。,2.5 使用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱,MATLAB神經(jīng)網(wǎng)絡(luò)工具箱大大降低了開發(fā)各種神經(jīng)網(wǎng)絡(luò)應(yīng)用的難度。設(shè)計(jì)者只需要調(diào)用相關(guān)函數(shù)即可,甚至通過NNTOOL圖形界面,不用編寫一行程序,就可完成一個(gè)神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)仿真。 本節(jié)主
18、要介紹NNTOOL圖形工具,神經(jīng)網(wǎng)絡(luò)程序設(shè)計(jì)見2.6。,2.5 使用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱,第一步 在MATLAB命令下打開nntool界面,2.5 使用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱,第二步 通過Import從工作空間或通過New Data手動(dòng)輸入訓(xùn)練樣本,2.5 使用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱,第三步 點(diǎn)擊new network建立神經(jīng)網(wǎng)絡(luò),該頁面用來建立神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),主要設(shè)置的參數(shù)有:神經(jīng)網(wǎng)絡(luò)類型、訓(xùn)練函數(shù)、各層神經(jīng)元數(shù)目及相應(yīng)的傳遞函數(shù)等,2.5 使用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱,第四步 設(shè)置訓(xùn)練參數(shù) 點(diǎn)擊train進(jìn)入training parameters頁設(shè)置訓(xùn)練參數(shù),主要包括訓(xùn)練代
19、數(shù)、允許誤差、顯示頻度等。,2.5 使用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱,第四步 點(diǎn)擊train進(jìn)入training parameters頁設(shè)置訓(xùn)練參數(shù),主要包括訓(xùn)練代數(shù)、允許誤差、顯示頻度等。,2.5 使用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱,第五步 訓(xùn)練已經(jīng)建立好的神經(jīng)網(wǎng)絡(luò)點(diǎn)擊train network開始訓(xùn)練。訓(xùn)練過程會(huì)顯示誤差隨代數(shù)的變化。,2.5 使用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱,第六步 仿真驗(yàn)證,進(jìn)入simulate頁,設(shè)置輸入,點(diǎn)擊simulate network。,2.6 神經(jīng)網(wǎng)絡(luò)在電力系統(tǒng)應(yīng)用實(shí)例,實(shí)例1:短期電力負(fù)荷預(yù)測 實(shí)例2:變壓器故障診斷,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用
20、,問題描述 以廣東某城市的2004年7月20日到7月30日的負(fù)荷值以及2004年7月21日到7月31日的氣象特征狀態(tài)作為網(wǎng)絡(luò)的訓(xùn)練樣本,來預(yù)測7月31日的電力負(fù)荷為例,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,廣東某地區(qū)7月20日25日24小時(shí)電力負(fù)荷表,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,廣東某地區(qū)7月26日31日24小時(shí)電力負(fù)荷表,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,學(xué)習(xí)樣本的分析與處理 在預(yù)測日的前一天中,每隔2個(gè)小時(shí)對(duì)電力負(fù)荷進(jìn)行一次測量,這樣一天可以得到12組負(fù)荷數(shù)據(jù),將前一天的實(shí)時(shí)負(fù)荷數(shù)據(jù)作為網(wǎng)絡(luò)的樣本數(shù)據(jù); 另外電力負(fù)荷還與環(huán)境因素有關(guān),所以本例中還
21、考慮了氣溫和天氣。即最高、最低氣溫和天氣特征,可以通過天氣預(yù)報(bào)得到預(yù)測日的最高、最低氣溫和天氣特征(晴天、陰天、雨天) ,可以用0、0.5、1 分別表示晴天、陰天、雨天,將預(yù)測當(dāng)天的氣象特征作為網(wǎng)絡(luò)的輸入變量,這樣輸入變量P就是一個(gè)15 維的向量,即n = 15; 目標(biāo)向量就是預(yù)測日當(dāng)天的12個(gè)負(fù)荷值,即輸出變量T為一個(gè)12維的向量,m = 12。 由于在輸入的數(shù)據(jù)中各類型的數(shù)據(jù)大小、單位都不統(tǒng)一,這樣大大增加了系統(tǒng)的運(yùn)算量、運(yùn)算時(shí)間還降低了精度甚至可能使神經(jīng)元趨于飽和不能繼續(xù)運(yùn)算。為了避免神經(jīng)元的飽和性,在確定輸入和輸出變量后,應(yīng)對(duì)其進(jìn)行歸一化處理,將數(shù)據(jù)處理為一定范圍之間。這樣就降低了運(yùn)算
22、量,提高運(yùn)算速度和時(shí)間。歸一化的方式很多,MATLAB中也有歸一化函數(shù)可對(duì)數(shù)據(jù)進(jìn)歸一化和反歸一化,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,2.確定網(wǎng)絡(luò)結(jié)構(gòu),2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,2.確定網(wǎng)絡(luò)結(jié)構(gòu),MATLAB實(shí)現(xiàn)函數(shù)net=newff(minmax(P),10,12,tansig,logsig,trainlm) 含義: Newff:建立BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)函數(shù) 參數(shù)的意思指該網(wǎng)絡(luò)隱含層、輸出層神經(jīng)元數(shù)目分 別為10個(gè)與12個(gè); 傳遞函數(shù)分別為正切S函數(shù)與對(duì)數(shù)S函數(shù); 訓(xùn)練函數(shù)選取增加動(dòng)量項(xiàng)的BP算法; minmax(P)指定輸入樣本的范圍,使得網(wǎng)絡(luò)初始權(quán)值 合理化
23、。 Net儲(chǔ)存返回的神經(jīng)網(wǎng)絡(luò),注意此時(shí)的神經(jīng)網(wǎng)絡(luò)還沒有開始訓(xùn)練,只是指定了網(wǎng)絡(luò)結(jié)構(gòu)而已; 注意輸入的是預(yù)測日頭天的歷史負(fù)荷數(shù)據(jù)與預(yù)測日的天氣數(shù)據(jù),而輸出是預(yù)測日需要預(yù)測的24小時(shí)負(fù)荷。,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,3.設(shè)置訓(xùn)練參數(shù),訓(xùn)練網(wǎng)絡(luò)前,必須設(shè)置訓(xùn)練參數(shù),MATLAB神經(jīng)網(wǎng)絡(luò)設(shè)置訓(xùn)練參數(shù)示例如下: net.trainParam.show=10; 解釋:每10代顯示一次 net.trainParam.lr=0.05; 解釋:設(shè)置訓(xùn)練速率 net.trainParam.mc=0.9; 解釋: 設(shè)置動(dòng)量因子 net.trainParam.epochs=100000; 解釋:
24、 設(shè)置訓(xùn)練的代數(shù) net.trainParam.goal=0.01; 解釋: 設(shè)置目標(biāo)誤差 注意!上面的net指的是上一步已經(jīng)建立好的BP神經(jīng)網(wǎng)絡(luò),2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,4.訓(xùn)練構(gòu)建好的神經(jīng)網(wǎng)絡(luò),利用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱的train函數(shù)即可對(duì)前面指定好網(wǎng)絡(luò)結(jié)構(gòu)與訓(xùn)練參數(shù)的神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,train函數(shù)的調(diào)用格式如下:,Net=Train(net,P,T),解釋: P表示訓(xùn)練樣本的輸入矢量; T表示訓(xùn)練樣本的輸出矢量,為訓(xùn)練目標(biāo); 右邊的參數(shù)net指得的還未開始訓(xùn)練的神經(jīng)網(wǎng) 絡(luò),左邊的變量net指得的練好的神經(jīng)網(wǎng)絡(luò)保 存的位置,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷
25、預(yù)測中的應(yīng)用,5.仿真訓(xùn)練好的神經(jīng)網(wǎng)絡(luò),利用MATLAB神經(jīng)網(wǎng)絡(luò)工具箱的sim函數(shù)即可對(duì)使用train函數(shù)訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)進(jìn)行仿真,以便驗(yàn)證訓(xùn)練的效果是否達(dá)到預(yù)期的目標(biāo)誤差,sim的調(diào)用格式如下:,A=sim(net,P),解釋: P表示訓(xùn)練樣本的輸入矢量; 參數(shù)net指得的練好的神經(jīng)網(wǎng)絡(luò) A指得是當(dāng)訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)net獲得輸入P 時(shí)的實(shí)際 輸出,得到實(shí)際輸出A后,與訓(xùn)練樣本目標(biāo)輸出T相比較,即可得到誤差,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,5.仿真過程與結(jié)果,下面是采用增加動(dòng)量項(xiàng)的BP算法訓(xùn)練函數(shù)traingdm、隱層為10個(gè)神經(jīng)元的預(yù)測結(jié)果 。,左邊是訓(xùn)練過程誤差曲線,橫坐標(biāo)
26、是訓(xùn)練代數(shù),縱坐標(biāo)是誤差,該曲線是訓(xùn)練過程中自動(dòng)產(chǎn)生的; 右邊是實(shí)際輸出與目標(biāo)輸出負(fù)荷曲線,橫坐標(biāo)是小時(shí),縱坐標(biāo)是負(fù)荷,注意負(fù)荷已經(jīng)被正規(guī)化了。,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,5.仿真過程與結(jié)果,下面是采用自適應(yīng)學(xué)習(xí)速率訓(xùn)練函數(shù)trainlm、隱層為10個(gè)神經(jīng)元的預(yù)測結(jié)果 。,左邊是訓(xùn)練過程誤差曲線,橫坐標(biāo)是訓(xùn)練代數(shù),縱坐標(biāo)是誤差,該曲線是訓(xùn)練過程中自動(dòng)產(chǎn)生的; 右邊是實(shí)際輸出與目標(biāo)輸出負(fù)荷曲線,橫坐標(biāo)是小時(shí),縱坐標(biāo)是負(fù)荷,注意負(fù)荷已經(jīng)被正規(guī)化了。,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,6.訓(xùn)練結(jié)果數(shù)據(jù)表,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,7.主要的源
27、碼,%定義訓(xùn)練樣本 %P為輸入矢量,T為輸出目標(biāo)矢量,注意樣本的構(gòu)成。 P= 0.2452 0.1466 0.1314 0.2243 0.5523 0.6642 0.7015 0.6981 0.6821 0.6945 0.7549 0.8215 0.2415 0.3027 0; 0.2217 0.1581 0.1408 0.2304 0.5134 0.5312 0.6819 0.7125 0.7265 0.6847 0.7826 0.8325 0.2385 0.3125 0; 0.2525 0.1627 0.1507 0.2406 0.5502 0.5636 0.7051 0.7352 0.7
28、459 0.7015 0.8064 0.8156 0.2216 0.2701 1; 0.2016 0.1105 0.1243 0.1978 0.5021 0.5232 0.6819 0.6952 0.7015 0.6825 0.7825 0.7895 0.2352 0.2506 0.5; 0.2115 0.1201 0.1312 0.2019 0.5532 0.5736 0.7029 0.7032 0.7189 0.7019 0.7965 0.8025 0.2542 0.3125 0; 0.2335 0.1322 0.1534 0.2214 0.5623 0.5827 0.7198 0.727
29、6 0.7359 0.7506 0.8092 0.8221 0.2601 0.3198 0; 0.2368 0.1432 0.1653 0.2205 0.5823 0.5971 0.7136 0.7129 0.7263 0.7153 0.8091 0.8217 0.2579 0.3099 0; 0.2342 0.1368 0.1602 0.2131 0.5726 0.5822 0.7101 0.7098 0.7127 0.7121 0.7995 0.8126 0.2301 0.2867 0.5; 0.2113 0.1212 0.1305 0.1819 0.4952 0.5312 0.6886
30、0.6898 0.6999 0.7323 0.7721 0.7956 0.2234 0.2799 1; 0.2005 0.1121 0.1207 0.1605 0.4556 0.5022 0.6553 0.6673 0.6798 0.7023 0.7521 0.7756 0.2314 0.2977 0 T=0.2217 0.1581 0.1408 0.2304 0.5134 0.5312 0.6819 0.7125 0.7265 0.6847 0.7826 0.8325; 0.2525 0.1627 0.1507 0.2406 0.5502 0.5636 0.7051 0.7352 0.745
31、9 0.7015 0.8064 0.8156; 0.2016 0.1105 0.1243 0.1978 0.5021 0.5232 0.6819 0.6952 0.7015 0.6825 0.7825 0.7895; 0.2115 0.1201 0.1312 0.2019 0.5532 0.5736 0.7029 0.7032 0.7189 0.7019 0.7965 0.8025; 0.2335 0.1322 0.1534 0.2214 0.5623 0.5827 0.7198 0.7276 0.7359 0.7506 0.8092 0.8221; 0.2368 0.1432 0.1653
32、0.2205 0.5823 0.5971 0.7136 0.7129 0.7263 0.7153 0.8091 0.8217; 0.2342 0.1368 0.1602 0.2131 0.5726 0.5822 0.7101 0.7098 0.7127 0.7121 0.7995 0.8126; 0.2113 0.1212 0.1305 0.1819 0.4952 0.5312 0.6886 0.6898 0.6999 0.7323 0.7721 0.7956; 0.2005 0.1121 0.1207 0.1605 0.4556 0.5022 0.6553 0.6673 0.6798 0.7
33、023 0.7521 0.7756; 0.2123 0.1257 0.1343 0.2079 0.5579 0.5716 0.7059 0.7145 0.7205 0.7401 0.8019 0.8136,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,7.主要的源碼,%創(chuàng)建一個(gè)新的bp前向神經(jīng)網(wǎng)絡(luò) %newff-生成一個(gè)新的bp前向神經(jīng)網(wǎng)絡(luò) net=newff(minmax(P),10,12,tansig,logsig,trainlm); %設(shè)置訓(xùn)練參數(shù) net.trainParam.show=10; %每10代顯示一次 net.trainParam.lr=0.05; %訓(xùn)練速率 net.t
34、rainParam.mem_reduc=3; net.trainParam.mc=0.9; %動(dòng)量因子 net.trainParam.epochs=100000; %訓(xùn)練的代數(shù) net.trainParam.goal=0.01; %目標(biāo)誤差,2.6.1 實(shí)例1 神經(jīng)網(wǎng)絡(luò)在負(fù)荷預(yù)測中的應(yīng)用,7.主要的源碼,%訓(xùn)練bp前向神經(jīng)網(wǎng)絡(luò) net,tr=train(net,P,T); %仿真 A=sim(net,P) 計(jì)算仿真誤差 E=T-A SSE=sse(E),2.6.2 實(shí)例2 基于神經(jīng)網(wǎng)絡(luò)的變壓器故障診斷,1.問題提出及解決方案,電力變壓器的安全運(yùn)行對(duì)保證供電的可靠性具有重要的意義,現(xiàn)有的實(shí)驗(yàn)方法
35、中,油中溶解氣體(DGA)分析對(duì)設(shè)備的早期潛伏性故障較為敏感。但通常采用的幾種分析方法均有缺陷,如特征氣體分析法僅定性的說明氣體含量與對(duì)應(yīng)故障的關(guān)系,不利于診斷的實(shí)現(xiàn);IEC三比值法和日本的改良電協(xié)研法均采用比值編碼法,存在編碼缺損等問題。因此,很有必要探索一種更方便、更可靠的診斷方法,以提高診斷的正確率由于神經(jīng)網(wǎng)絡(luò)(ANN)具有并行處理、學(xué)習(xí)和記憶、非線性映射、自適應(yīng)能力和魯棒性等固有性質(zhì),使其非常適合應(yīng)用在電氣故障診斷領(lǐng)域。為此,本實(shí)例針對(duì)變壓器故障特點(diǎn),研究采用合適結(jié)構(gòu)和算法的神經(jīng)網(wǎng)絡(luò),用以實(shí)現(xiàn)變壓器故障的準(zhǔn)確診斷。,2.6.2 實(shí)例2 基于神經(jīng)網(wǎng)絡(luò)的變壓器故障診斷,2.變壓器故障診斷的
36、ANN設(shè)計(jì),網(wǎng)絡(luò)輸入層節(jié)點(diǎn)數(shù)就是一個(gè)模式所包含的特征量數(shù)。在油色譜分析領(lǐng)域中,基于油中溶氣體類型與內(nèi)部故障性質(zhì)的對(duì)應(yīng)關(guān)系,以油中5種特征氣體為依據(jù)的判斷變壓器故障的方法。其特征量為H2,CH,C2H4,C2H2,C2H6,這樣點(diǎn)數(shù)N為5的網(wǎng)絡(luò)輸入層定,如圖3所示。在對(duì)變壓器的故障識(shí)別時(shí),變壓器的故障類型選擇為:中低溫過熱、高溫過熱、低能放電和高能放電。當(dāng)考慮正常情況也作為一種類型時(shí)。一個(gè)M 為5節(jié)點(diǎn)的網(wǎng)絡(luò)輸出層被確定。,2.6.2 實(shí)例2 基于神經(jīng)網(wǎng)絡(luò)的變壓器故障診斷,2.變壓器故障診斷的ANN設(shè)計(jì),2.6.2 實(shí)例2 基于神經(jīng)網(wǎng)絡(luò)的變壓器故障診斷,3.變壓器故障診斷訓(xùn)練樣本,2.6.2 實(shí)例
37、2 基于神經(jīng)網(wǎng)絡(luò)的變壓器故障診斷,4.ANN網(wǎng)絡(luò)訓(xùn)練與分析,在實(shí)驗(yàn)測試中,收集了30組變壓器樣本,并隨機(jī)取出20組樣本用于神經(jīng)網(wǎng)絡(luò)訓(xùn)練,其余的樣本作為仿真。,2.6.2 實(shí)例2 基于神經(jīng)網(wǎng)絡(luò)的變壓器故障診斷,5.結(jié)論,神經(jīng)網(wǎng)絡(luò)的診斷要比三比值法準(zhǔn)確。通過改進(jìn)學(xué)習(xí)訓(xùn)練算法,可在同等的收斂要求下,獲得較高的精度 如果輸入模式與訓(xùn)練樣本偏離較大,則網(wǎng)絡(luò)可能得出錯(cuò)誤的結(jié)論。這反映了網(wǎng)絡(luò)不具備此種癥狀的知識(shí),因此,可將該樣本作為新的樣本加入訓(xùn)練樣本集訓(xùn)練網(wǎng)絡(luò),使之獲得更多的知識(shí) 對(duì)溶解氣體分析法存在的問題,將人工神經(jīng)網(wǎng)絡(luò)應(yīng)用于變壓器故障診斷;根據(jù)變壓器故障的特點(diǎn),采用了動(dòng)量因子技術(shù)的神經(jīng)網(wǎng)絡(luò)BP算法,使
38、診斷網(wǎng)絡(luò)具有較強(qiáng)的學(xué)習(xí)能力、泛化能力和適應(yīng)能力,第三章 遺傳算法及其在電力系統(tǒng)中的應(yīng)用,3.1 概述 遺傳算法的基本思想是基于Darwin進(jìn)化論和Mendel的遺傳學(xué)說的。Darwin進(jìn)化論最重要的是適者生存原理。它認(rèn)為每一物種在發(fā)展中越來越適應(yīng)環(huán)境。物種每個(gè)個(gè)體的基本特征由后代所繼承,但后代又會(huì)產(chǎn)生一些異于父代的新變化。在環(huán)境變化時(shí),只有那些能適應(yīng)環(huán)境的個(gè)體特征方能保留下來。Mendel遺傳學(xué)說最重要的是基因遺傳原理。它認(rèn)為遺傳以密碼方式存在細(xì)胞中,并以基因形式包含在染色體內(nèi)。每個(gè)基因有特殊的位置并控制某種特殊性質(zhì)。所以,由基因產(chǎn)生的個(gè)體對(duì)環(huán)境具有某種適應(yīng)性?;蛲蛔兒突蚪徊婵僧a(chǎn)生更適應(yīng)于
39、環(huán)境的后代。經(jīng)過存優(yōu)去劣的自然淘汰,適應(yīng)性高的基因結(jié)構(gòu)得以保存下來。由于遺傳算法不依賴于被優(yōu)化對(duì)象數(shù)學(xué)模型,不需要導(dǎo)數(shù)信息,屬于全局多點(diǎn)隨機(jī)搜索算法,因此,目前被廣泛應(yīng)用于各種復(fù)雜優(yōu)化中。,3.2 遺傳算法的特點(diǎn)與優(yōu)點(diǎn),(1)自組織、自適應(yīng)和學(xué)習(xí)性。(2)遺傳算法按并行方式搜索一個(gè)種群數(shù)目的點(diǎn),而不是單點(diǎn)。(3)遺傳算法不需要求導(dǎo)或其他輔助知識(shí),而只需要影響搜索方向的目標(biāo)函數(shù)和適應(yīng)度函數(shù)。(4)遺傳算法強(qiáng)調(diào)概率轉(zhuǎn)化規(guī)則,而不是確定的轉(zhuǎn)換規(guī)則。(5)遺傳算法對(duì)給定問題可以產(chǎn)生出許多潛在解,最終選擇可以由使用者確定,3.3 生物進(jìn)化理論和遺傳學(xué)基本概念,染色體 生物細(xì)胞中含有很多微小的絲狀化合物,
40、它是遺傳物質(zhì)的主要再體,由多個(gè)遺傳因子基因組成。 個(gè)體指染色體帶有特征的實(shí)體。如:人就是一個(gè)個(gè)體,人的各種不同的特征可以用含有不同遺傳信息的染色體表現(xiàn),不同的染色體能決定人的特征的不同特征。 種群染色體是帶有特征的個(gè)體的集合稱為種群。該集合內(nèi)個(gè)體數(shù)稱為群體的大小。有時(shí)個(gè)體的集合也稱為個(gè)體群。如:人類就是一個(gè)種群,種群中由各種各樣不同性格,不同外觀特征的人組成。,3.3 生物進(jìn)化理論和遺傳學(xué)基本概念,進(jìn)化生物在其延續(xù)生存的過程中,逐漸適應(yīng)其生存的環(huán)境,使得其品質(zhì)不斷得到改良,這種生命的現(xiàn)象稱為進(jìn)化。生物的進(jìn)化以種群的形式進(jìn)行的。如:如人從猿人進(jìn)化到今天富有智慧的現(xiàn)代人,這一個(gè)過程就是進(jìn)化過程。
41、適應(yīng)度在研究自然界中的生物的遺傳和進(jìn)化現(xiàn)象時(shí) ,生物學(xué)家使用適應(yīng)度這個(gè)術(shù)語來衡量某個(gè)物種對(duì)于生存環(huán)境的適應(yīng)程度。對(duì)于生存環(huán)境的適應(yīng)程度較高的物種將獲得更高的繁殖機(jī)會(huì)。而對(duì)于生存環(huán)境適應(yīng)度較低的物種,其繁殖機(jī)會(huì)就會(huì)較少,甚至滅絕。,3.3 生物進(jìn)化理論和遺傳學(xué)基本概念,選擇指決定以一定的概率種群中選擇若干個(gè)體的操作。而一般而言,選擇的過程是一種基于適應(yīng)度的優(yōu)勝劣汰的過程。 復(fù)制細(xì)胞在分裂時(shí),遺傳物質(zhì)DNA通過復(fù)制而轉(zhuǎn)移到新生的細(xì)胞中,新的細(xì)胞繼承了舊的細(xì)胞的基因。 交叉有性生殖生物在繁殖下一代時(shí)兩個(gè)同源染色體之間通過交叉而重組,亦即在兩個(gè)染色體的某一相同位置處DNA被切斷,其前后兩串分別交叉組合
42、形成兩個(gè)新的染色體。這個(gè)過程又稱基因的重組。,3.3 生物進(jìn)化理論和遺傳學(xué)基本概念,變異在細(xì)胞進(jìn)行復(fù)制的過程中可能以很小的概率產(chǎn)生某些復(fù)制的差錯(cuò),從而使DNA發(fā)生某種變異,產(chǎn)生新的染色體,這些新的染色體表現(xiàn)出來新的性狀。 編碼DNA中的遺傳信息在一個(gè)長鏈上按一定的模式排列,也即進(jìn)行了遺傳編碼。遺傳編碼可以看作表現(xiàn)型到遺傳子型的映射。 解碼從遺傳子型到邊現(xiàn)型的映射。,3.4 遺傳算法的基本操作,1 選擇 選擇是確定交叉或者交叉?zhèn)€體,以及被選個(gè)體將產(chǎn)生多少個(gè)子代個(gè)體。首先要計(jì)算適應(yīng)度:(1)按比例計(jì)算適應(yīng)度,(2)基于排序的適應(yīng)度計(jì)算。,輪盤賭選擇,3.4 遺傳算法的基本操作,2 交叉 再生之后重
43、要的遺傳操作交叉,在生物學(xué)上稱為雜交,可視為生物之所以得以進(jìn)化之所在,隨機(jī)產(chǎn)生一個(gè)交叉點(diǎn)位置,父體1和父體2在交叉點(diǎn)位置之右的部分基因碼互換,形成子個(gè)體1和子個(gè)體2。類似地完成其他個(gè)體的交叉操作。,個(gè)體間的單點(diǎn)交叉,3.4 遺傳算法的基本操作,3 變異 作用:如果只考慮交叉操作實(shí)現(xiàn)進(jìn)化機(jī)制,在大多情況下是不行的,這與生物界近親繁殖影響進(jìn)化歷程是類似的。因?yàn)榉N群個(gè)體數(shù)是有限的,經(jīng)過若干代交叉操作,因?yàn)樵从谝粋€(gè)較好祖先的子個(gè)體逐漸充斥整個(gè)種群額現(xiàn)象,問題會(huì)導(dǎo)致過早收斂,當(dāng)然,最后獲得的個(gè)體不能代表問題的最優(yōu)解。為了避免過早收斂,有必要在進(jìn)化的過程中引入具有新遺傳基因碼發(fā)生了突變,這對(duì)于保持生物多樣
44、性是非常重要的。 實(shí)現(xiàn):模仿生物變異的遺傳操作,對(duì)于二進(jìn)制的基因碼組成的個(gè)體種群,實(shí)現(xiàn)基因碼的小概率翻轉(zhuǎn),即達(dá)到變異目的,變異操作,3.5 遺傳算法的進(jìn)化過程示意,一般而言,一個(gè)世代的簡單進(jìn)化包括了適應(yīng)度的選擇和再生、交叉和變異操作。將上面的所有種群的遺傳算法綜合起來,初始種群第一代進(jìn)化過程如下圖所示。初始種群經(jīng)過選擇操作,適應(yīng)度較高的8號(hào)和6號(hào)個(gè)體分別復(fù)制出2個(gè),使硬度較低的2號(hào)和3號(hào)遭到淘汰,接下來按一定的概率選擇了4對(duì)父個(gè)體分別完成交叉操作,在隨機(jī)確定的“/”位置實(shí)行單點(diǎn)交叉生成4對(duì)子個(gè)體。最后按小概率選中某個(gè)個(gè)體的基因碼位置,產(chǎn)生變異。這樣經(jīng)過上述的過程形成了第一代的種群。以后一代一代
45、地進(jìn)化過程如此循環(huán)下去,每一代結(jié)束都產(chǎn)生新的種群。演化的代數(shù)主要取決于代表問題解得收斂狀態(tài),末代種群眾最佳個(gè)體作為問題的最優(yōu)近似解。,3.5 遺傳算法的進(jìn)化過程示意,3.6 一個(gè)典型遺傳算法流程框圖,3.7 MATLAB遺傳算法工具箱使用,遺傳算法工具箱MATLAB Genetic Algorithm Toolbox 旨在提供設(shè)計(jì)允許遺傳算法的環(huán)境,和神經(jīng)網(wǎng)絡(luò)工具箱一樣,遺傳算法工具箱也提供了一套基于MATLAB的函數(shù)供開發(fā)者使用,利用該工具箱,可大大節(jié)省開發(fā)時(shí)間。,3.7 MATLAB遺傳算法工具箱使用,遺傳算法工具箱MATLAB Genetic Algorithm Toolbox 旨在提供
46、設(shè)計(jì)允許遺傳算法的環(huán)境,和神經(jīng)網(wǎng)絡(luò)工具箱一樣,遺傳算法工具箱也提供了一套基于MATLAB的函數(shù)供開發(fā)者使用,利用該工具箱,可大大節(jié)省開發(fā)時(shí)間。,3.7 MATLAB遺傳算法工具箱使用,一個(gè)典型的遺傳算法 LIND = 8; % 染色體長度 NVAR = 2; % 優(yōu)化變量數(shù)目 NIND = 10; % 種群數(shù)目 GGAP = 0.9; % 代差,指得是上代最好的10%個(gè)體 不參與下一代的復(fù)制操作 XOV = 0.7; % 設(shè)置交叉率 MUTR = 0.0175; % 設(shè)置變異率 MAXGEN = 30; % 優(yōu)化代數(shù) % 指定編碼方式,變量范圍,交叉方式 FieldD = LIND LIND;
47、 1 1; 1000 1000; 1 1; 0 0; 0 0; 0 0; Chrom = crtbp(Nind, Lind*NVAR); % 創(chuàng)建初始化種群 %計(jì)算適應(yīng)度 ObjV = objfun(bs2rv(Chrom, FieldD);,3.7 MATLAB遺傳算法工具箱使用,對(duì)FieldD 的解釋 FieldD = LIND LIND; 1 1; 1000 1000; 1 1; 0 0; 0 0; 0 0;,解釋:兩列對(duì)應(yīng)兩個(gè)變量,上面設(shè)置的含義指染色體長度為8;1-1000是變量范圍,1 0 0 0指的是二進(jìn)制編碼與單點(diǎn)交叉,3.7 MATLAB遺傳算法工具箱使用,對(duì)Chrom =
48、crtbp(NIND, LIND*NVAR)的解釋,解釋:crtbp函數(shù)的運(yùn)行結(jié)果是產(chǎn)生由10個(gè)個(gè)體組成的初始種群;其中每行表示一條染色體,即種群中的一個(gè)個(gè)體,由于被優(yōu)化的變量為2個(gè),每個(gè)變量的編碼長度是8,故每行由16位0、1構(gòu)成的隨機(jī)字符串;一共10行表示10條染色體。,3.7 MATLAB遺傳算法工具箱使用,對(duì)ObjV = objfun(bs2rv(Chrom, FieldD)的解釋; Bs2rv函數(shù)是對(duì)產(chǎn)生的初始種群進(jìn)行解碼,也就是根據(jù)FieldD變量的設(shè)置把初始種群由二進(jìn)制表示的染色體轉(zhuǎn)化成10進(jìn)制; Objfun是開發(fā)人員根據(jù)實(shí)際應(yīng)用編制的適應(yīng)度函數(shù),注意該函數(shù)并不是被優(yōu)化對(duì)象的數(shù)
49、學(xué)模型,而是用來評(píng)價(jià)個(gè)體性能好壞的函數(shù), 特別值得注意的是適應(yīng)度函數(shù)必須滿足兩個(gè)條件:1是適應(yīng)度函數(shù)必須是正的,2是其值越大表示性能越好。,3.7 MATLAB遺傳算法工具箱使用,一個(gè)典型的遺傳算法續(xù) 當(dāng)遺傳算法初始參數(shù)設(shè)置完畢,就轉(zhuǎn)入遺傳進(jìn)化: Gen = 0; % 計(jì)數(shù)器 while Gen MAXGEN % 優(yōu)化循環(huán) SelCh = select(sus, Chrom, FitnV, GGAP); % 復(fù)制操作 SelCh = recombin(xovsp, SelCh, XOV); % 交叉操作 SelCh = mut(SelCh, MUTR); % 變異操作 ObjVSel = ob
50、jfun(bs2rv(SelCh, FieldD); % 計(jì)算適應(yīng)度 %把上一代最好的10%個(gè)體插入新種群里 Chrom ObjV=reins(Chrom, SelCh, 1, 1, ObjV, ObjVSel); Gen = Gen+1; % 計(jì)數(shù)器加一 End % 循環(huán)結(jié)束 % 優(yōu)化完畢后把種群解碼找出里面適應(yīng)度最大的對(duì)應(yīng)變量組合即為優(yōu)化結(jié)果。 Phen = bs2rv(Chrom, FieldD);,3.8 遺傳算法在電力系統(tǒng)的應(yīng)用,實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化 實(shí)例2 遺傳算法實(shí)現(xiàn)發(fā)電廠經(jīng)濟(jì)調(diào)度 實(shí)例3 混合遺傳算法與神經(jīng)網(wǎng)絡(luò)在小電流接地系統(tǒng) 故障選線中的應(yīng)用,3.8.1 實(shí)
51、例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,1 初始化參數(shù) 對(duì)于控制系統(tǒng)初始化參數(shù)有Ki、Kd、Kp以及模型的參考輸入ref;對(duì)于遺傳算法控制有種群規(guī)模NIND、染色體長度PRECI、繁殖代數(shù)MAXGEN、交叉率、變異率。 NIND = 40; %種群規(guī)模 MAXGEN =30; %繁殖代數(shù) NVAR = 3; % 參數(shù)個(gè)數(shù) PRECI =10; % 變量二進(jìn)制編碼的位數(shù) GGAP = 0.9; % 保留最好個(gè)體的代溝系數(shù),如:設(shè)置GGAP=0.9就說適應(yīng)度最好的10%個(gè)體直接進(jìn)入下一代,其余90%的個(gè)體進(jìn)行交叉和變異 CO=0.85; %變異概率為0.85 FieldD = rep(PRECI,1
52、,NVAR);%設(shè)置編碼位數(shù),種群規(guī)模 FieldD(2:3,1)=rep(0;10,1,1);%設(shè)置KP的取值范圍 FieldD(2:3,2)=rep(0;10,1,1);%設(shè)置KI的取值范圍 FieldD(2:3,3)=rep(0;10,1,1);%設(shè)置KD的取值范圍 FieldD(4:7,1:3)=rep(1;0;1;1,1,NVAR);%設(shè)置編碼與交叉方式,3.8.1 實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,2 初始化種群 待優(yōu)化參數(shù)采用二進(jìn)制編碼,根據(jù)精度要求,每個(gè)參數(shù)用N(N為任意正整數(shù))位二進(jìn)制表示,3個(gè)參數(shù)KP、KI、KD組成一個(gè)由3N位二進(jìn)制編碼的染色體。 種群初始化的程序如
53、下: Chrom = crtbp(NIND, NVAR*PRECI),3.8.1 實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,3 解碼 解碼時(shí),按每個(gè)參數(shù)對(duì)應(yīng)的二進(jìn)制位數(shù)均勻地把個(gè)體截開,根據(jù)每個(gè)參數(shù)的搜索范圍進(jìn)行解碼。 解碼代碼如下: A=bs2rv(Chrom,FieldD),3.8.1 實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,4 適應(yīng)度的選擇 遺傳算法在進(jìn)化搜索中基本不利用外部信息,僅以適應(yīng)度函數(shù)為依據(jù),利用種群中每個(gè)個(gè)體的適應(yīng)度值來進(jìn)行搜索,因此適應(yīng)度函數(shù)至關(guān)重要,直接影響到遺傳算法的收斂速度以及能否達(dá)到最優(yōu)解。適應(yīng)度函數(shù)一般由目標(biāo)函數(shù)變換而成。對(duì)于PID控制系統(tǒng)而言,PID控制的目的就是
54、使系統(tǒng)性能達(dá)到最優(yōu),系統(tǒng)性能的評(píng)價(jià)方法多樣,在MATLAB中較易實(shí)現(xiàn)的是通過評(píng)價(jià)系統(tǒng)時(shí)域方面的各項(xiàng)動(dòng)態(tài)性能指標(biāo)來確定系統(tǒng)性能的好壞,即對(duì)系統(tǒng)給定參考輸入量,觀察輸出的超調(diào)量mp,調(diào)節(jié)時(shí)間ts,峰值時(shí)間tp。mp越小,系統(tǒng)跟參考輸入的偏差越少;tp、ts越小,系統(tǒng)快速性能越好。PID調(diào)節(jié)器的尋優(yōu),就是尋找合適的PID參數(shù),使得各動(dòng)態(tài)性能指標(biāo)最小,以滿足實(shí)際控制系統(tǒng)的性能要求。,3.8.1 實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,5 對(duì)適應(yīng)度的幾點(diǎn)說明 適應(yīng)度必須是正數(shù)且其值愈大表示性能愈好; w1,w2,w3,w4 是mp,tp,ts,f四個(gè)指標(biāo)在適應(yīng)度函數(shù)中的權(quán)值,對(duì)各個(gè)性能指標(biāo)的偏重會(huì)有所不
55、同; T1,T2,T3,T4分別是mp,ts,tp,f的性能期望值,對(duì)mp,ts,tp,,f起到約束的作用,加入T1,T2,T3,T4可以消除各個(gè)指標(biāo)的物理量,把性能指標(biāo)歸一化; 要計(jì)算mp,ts,tp,f,就必須先要將解碼后的Kp、Ki、Kd代入仿真模型中,通過仿真得到輸出的數(shù)據(jù),然后對(duì)數(shù)據(jù)進(jìn)行運(yùn)算分析; 仿真模型得到系統(tǒng)輸出數(shù)據(jù)的程序是: t,x,y=sim(test) %對(duì)模型“test”仿真,將數(shù)據(jù)送入工作空間,仿真時(shí)間為t,模型狀態(tài)量為x,模型輸出量為y,3.8.1 實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,6 復(fù)制 為了防止上一代中最好的結(jié)果丟失,本文把上一代種群中適應(yīng)度最大的10%
56、的染色體不參加交叉和變異,而直接進(jìn)入下一代種群,其余的90%個(gè)體由交叉和變異兩種遺傳算子產(chǎn)生子代個(gè)體,復(fù)制的方法采用輪盤賭選擇法。其對(duì)應(yīng)程序如下: SelCh = select(rws, Chrom, FitnV, GGAP) %“rws”是輪盤賭選擇法,“select”是選擇操作命令。根據(jù)適應(yīng)度FitnV,代溝系數(shù)GGAP,對(duì)種群Chrom用輪盤賭選擇法選擇參加交叉和變異的個(gè)體。,3.8.1 實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,7 交叉與變異 個(gè)體復(fù)制后進(jìn)行交叉操作,交叉操作是隨機(jī)選擇個(gè)體編碼的位數(shù),以這個(gè)位數(shù)為交叉點(diǎn),按照交叉概率在種群中選擇進(jìn)行交叉的個(gè)體,在個(gè)體之間兩兩進(jìn)行編碼互換,
57、從而產(chǎn)生新的個(gè)體。一般而言,交叉概率應(yīng)取得比較大,這樣可以加快種群的更新量,經(jīng)交叉操作后的個(gè)體按照變異概率進(jìn)行變異操作,變異是按照變異概率選擇進(jìn)行變異操作的個(gè)體,隨機(jī)確定個(gè)體編碼的某一位碼元,使該碼元翻轉(zhuǎn);。變異概率應(yīng)取得很小,這樣能夠保證種群的穩(wěn)定性。,3.8.1 實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,7 交叉與變異 交叉變異的程序如下: SelCh = recombin(xovsp,SelCh,CO); %“xovsp”是單點(diǎn)交叉法,“recombin” 是交叉操作的命令。對(duì)選擇后的種群按照0.85的交叉概率進(jìn)行個(gè)體的兩兩交叉。 SelCh = mut(SelCh)“mut” %是變異操
58、作的命令,默認(rèn)交叉概率是0.01。對(duì)“selch”按0.01的概率進(jìn)行變異。 JS1 %“JS1”是計(jì)算適應(yīng)度函數(shù)的m文件,運(yùn)行該文件計(jì)算經(jīng)交叉和變異后的個(gè)體適應(yīng)度 ChromObjVCh=reins(Chrom,SelCh,1,1,ObjVCh,ObjVSel) %將上一代最好的10%的個(gè)體插入當(dāng)前代,3.8.1 實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,8 停止條件 停止條件可以設(shè)為以下兩種情況: 1、判斷性能指標(biāo)是否達(dá)標(biāo)來確定運(yùn)算是否停止。如mpT1,tsT2,tpT3,fT4時(shí)停止操作,輸出尋優(yōu)結(jié)果;2、達(dá)到預(yù)設(shè)的繁殖代數(shù)后停止算法操作輸出尋優(yōu)結(jié)果。方法1在沒有先驗(yàn)數(shù)據(jù)的前提下很難確定達(dá)
59、標(biāo)的標(biāo)準(zhǔn),有可能在執(zhí)行算法的過程中因性能無法達(dá)標(biāo)而陷入死循環(huán)。另外,最優(yōu)參數(shù)是一個(gè)潛在的數(shù)據(jù),我們也很難估計(jì)最優(yōu)參數(shù)能使系統(tǒng)性能達(dá)到一個(gè)怎樣的高度,假如我們規(guī)定了硬性指標(biāo)使算法停止,就很可能錯(cuò)過了最優(yōu)參數(shù)。方法2是通過達(dá)到指定繁殖代數(shù)來結(jié)束算法,繁殖代數(shù)越大尋優(yōu)結(jié)果就越接近最優(yōu)解,算法用時(shí)也越長;反之,尋優(yōu)結(jié)果越差,算法用時(shí)越短,因此在適當(dāng)設(shè)置繁殖代數(shù),確保尋優(yōu)精確和優(yōu)化時(shí)間盡量少的前提下可以克服方法一的兩個(gè)缺點(diǎn)。,3.8.1 實(shí)例1 遺傳算法實(shí)現(xiàn)PID控制參數(shù)優(yōu)化,9 三峽機(jī)組PID參數(shù)優(yōu)化仿真結(jié)果 三峽機(jī)組模型從最低水頭61m到最高水頭113m的各個(gè)空載工況進(jìn)行頻率擾動(dòng)實(shí)驗(yàn),但由于工況點(diǎn)甚多,本文選取了3個(gè)工況點(diǎn)進(jìn)行實(shí)驗(yàn),分別是61米水頭,91米水頭,和113米水頭進(jìn)行+-2Hz的擾動(dòng)。bt,Td,Tn的搜索范圍為從010,種群規(guī)模NIND=40、染色體長度PRECI =10、繁殖代數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 邊境安全課件教學(xué)
- 市政工程消防滅火方案
- 土壤詳查檢測實(shí)驗(yàn)室質(zhì)控培訓(xùn)
- 煤礦隱蔽致災(zāi)普查方案評(píng)審意見
- 2026年物業(yè)經(jīng)理年終總結(jié)范文(2篇)
- 車間設(shè)備管理培訓(xùn)課件
- 2026年老年友善醫(yī)院創(chuàng)建工作計(jì)劃范文
- 《利用軸對(duì)稱進(jìn)行設(shè)計(jì)》數(shù)學(xué)課件教案
- 2026年化工原理試題庫及答案
- 車間班組級(jí)安全培訓(xùn)課件
- 斜弱視眼科學(xué)
- 電商平臺(tái)需求規(guī)格說明書-通用版本
- GB/T 3372-2010拖拉機(jī)和農(nóng)業(yè)、林業(yè)機(jī)械用輪輞系列
- 北京城市旅游故宮紅色中國風(fēng)PPT模板
- 經(jīng)濟(jì)學(xué)原理 第一章課件
- 安川伺服說明書
- 社會(huì)組織管理概論全套ppt課件(完整版)
- 酒精度檢測原始記錄
- 冷渣機(jī)檢修工藝
- 建筑風(fēng)水學(xué)培訓(xùn)
- SAP成本月結(jié)操作及標(biāo)準(zhǔn)成本估算
評(píng)論
0/150
提交評(píng)論