遺傳算法在BP神經(jīng)網(wǎng)絡(luò)優(yōu)化中的應(yīng)用._第1頁
遺傳算法在BP神經(jīng)網(wǎng)絡(luò)優(yōu)化中的應(yīng)用._第2頁
遺傳算法在BP神經(jīng)網(wǎng)絡(luò)優(yōu)化中的應(yīng)用._第3頁
遺傳算法在BP神經(jīng)網(wǎng)絡(luò)優(yōu)化中的應(yīng)用._第4頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、遺傳算法在 BP 神經(jīng)網(wǎng)絡(luò)優(yōu)化中的應(yīng)用2O 世紀(jì) 80 年代后期 ,多機(jī)器人協(xié)作成為一種新的機(jī)器人應(yīng)用形式日益引起國內(nèi)外學(xué)術(shù)界的興趣與關(guān)注。 一方面,由于任務(wù)的復(fù)雜性, 在單機(jī)器人難以完成任務(wù)時(shí),人們希望通過多機(jī)器人之間的協(xié)調(diào)與合作來完成。 另一方面, 人們也希望通過多機(jī)器人間的協(xié)調(diào)與合作,來提高機(jī)器人系統(tǒng)在作業(yè)過程中的效率。1943 年, Maeullocu 和 Pitts 融合了生物物理學(xué)和數(shù)學(xué)提出了第一個(gè)神經(jīng)元模型。從這以后,人工神經(jīng)網(wǎng)絡(luò)經(jīng)歷了發(fā)展、停滯、再發(fā)展的過程,時(shí)至今日正走向成熟,在廣泛領(lǐng)域里得到了應(yīng)用, 其中將人工神經(jīng)網(wǎng)絡(luò)技術(shù)應(yīng)用到多機(jī)器人協(xié)作成為新的研究領(lǐng)域。 本文研究通過人

2、工神經(jīng)網(wǎng)絡(luò)控制多機(jī)器人完成協(xié)作搬運(yùn)的任務(wù) -3 J ,并應(yīng)用遺傳算法來對(duì)神經(jīng)網(wǎng)絡(luò) 進(jìn)行優(yōu)化。仿真結(jié)果表明,經(jīng)過遺傳算法優(yōu)化后的搬運(yùn)工作效率顯著提高,誤差降低。1人工神經(jīng)網(wǎng)絡(luò) ANN)的基本原理和結(jié)構(gòu)人工神經(jīng)網(wǎng)絡(luò) (Artiifcial Neural Network, ANN) 是抽象、簡(jiǎn)化與模擬大腦神經(jīng)結(jié)構(gòu)的計(jì)算模型, 又稱并行分布處理模型J 。ANN 由大量功能簡(jiǎn)單且具有自適應(yīng)能力的信息處理單元人工神經(jīng)元按照大規(guī)模并行的方式通過一定的拓?fù)浣Y(jié)構(gòu)連接而成。 ANN拓?fù)浣Y(jié)構(gòu)很多,其中采用反向傳播 (Back-Propa- gation ,BP)算法的前饋型神經(jīng)網(wǎng)絡(luò) ( 如下圖 1 所示 ) ,即

3、BP人工神經(jīng)網(wǎng)絡(luò), 是人工神經(jīng)網(wǎng)絡(luò)中最常用、最成熟的神經(jīng)網(wǎng)絡(luò)之一 。BP網(wǎng)絡(luò)模型處理信息的基本原理是:輸入信號(hào) x;通過中間節(jié)點(diǎn) ( 隱層點(diǎn) ) 作用于出節(jié)點(diǎn) ,經(jīng)過非線形變換,產(chǎn)生輸出信 Yk,網(wǎng)絡(luò)訓(xùn)練的每個(gè)樣本包括輸入向量 x 和期望輸出量 T ,網(wǎng)絡(luò)輸出值 Y 與期望輸出值 T 之間的偏差, 通過調(diào)整輸入節(jié)點(diǎn)與隱層節(jié)點(diǎn)的聯(lián)接強(qiáng)度取值 w;和隱層節(jié)點(diǎn)與輸出節(jié)點(diǎn)之間的聯(lián) 接強(qiáng)度Y 以及閾值 ,使誤差沿梯度方向下降,經(jīng)過反復(fù)學(xué)習(xí)訓(xùn)練,確定與最小誤差相對(duì)應(yīng)的網(wǎng)絡(luò)參數(shù) ( 權(quán)值和閾值 ) ,訓(xùn)練即告停止。此時(shí)經(jīng)過訓(xùn)練的神經(jīng)網(wǎng)絡(luò)即能對(duì)類似樣本的輸入信息,自行處理輸出誤差最小的經(jīng)過非線形轉(zhuǎn)換的信息。2

4、 遺傳算法的基本原理和步驟遺傳算法 (Geneitc Algoirthm ,GA)類似于自然進(jìn)化,通過作用于染色體上的基因?qū)ふ液玫娜旧w來求解問題 J。與自然界相似,遺傳算法對(duì)求解問題的本身一無所知,它所需要的僅是對(duì)算法所產(chǎn)生的每個(gè)染色體進(jìn)行評(píng)價(jià), 并基于適應(yīng)值來選擇染色體,使適應(yīng)性好的染色體有更多的繁殖機(jī)會(huì)。在遺傳算法中,通過隨機(jī)方式產(chǎn)生若干個(gè)所求解問題的數(shù)字編碼,即染色體, 形成初始群體;通過適應(yīng)度函數(shù)給每個(gè)個(gè)體一個(gè)數(shù)值評(píng)價(jià), 淘汰低適應(yīng)度的個(gè)體, 選擇高適應(yīng)度的個(gè)體參加遺傳操作, 經(jīng)過遺傳操作后的個(gè)體集合形成下一代新的種群。 對(duì)這個(gè)新種群進(jìn)行下一輪進(jìn)化。這就是遺傳算法的基思想。遺傳算法的

5、步驟為:(1) 初始化群體 ;(2) 計(jì)算群體上每個(gè)個(gè)體的適應(yīng)度值 ;(3) 按由個(gè)體適應(yīng)度值所決 定 的某個(gè)規(guī)則選擇將進(jìn)入下一代的個(gè)體;(4) 按概率 P 。進(jìn)行交叉操作 ;(5) 按概率 P 進(jìn)行突變操作;(6) 沒有滿足某種停止條件,則轉(zhuǎn)第(2) 步 ,否則進(jìn)入第 (7) 步 ;(7) 輸出種群中適應(yīng)度值最優(yōu)的染色體作為問題的滿意解或最優(yōu)解。程序的停止條件最簡(jiǎn)單的有如下兩種情況:(1) 完成了預(yù)先給的進(jìn)化代數(shù)則停止;(2) 種群中的最優(yōu)個(gè)體在連續(xù)若干代沒有改進(jìn)或平均適應(yīng)度在連續(xù)若干代基本沒有改進(jìn)時(shí)停止。為了改善 BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法易陷入局部極小的缺陷,本文采用遺傳算法來優(yōu)化 BP神經(jīng)網(wǎng)

6、絡(luò)的性能。首先采用遺傳算法來優(yōu)化 BP神經(jīng)網(wǎng)絡(luò)的權(quán)值和閾值,然后將這些優(yōu)化值賦給網(wǎng)絡(luò)得到優(yōu)化的 BP神經(jīng)網(wǎng)絡(luò),最后用仿真數(shù)據(jù)評(píng)估該優(yōu)化網(wǎng)絡(luò)的性能。數(shù)值仿真結(jié)果表明:經(jīng)遺傳算法優(yōu)化 BP神經(jīng)網(wǎng)絡(luò)能有效地避免原始 BP神經(jīng)網(wǎng)絡(luò)容易出現(xiàn)的局部極小, 且具有收斂速度快和精度高等優(yōu)點(diǎn)。 前饋神經(jīng)網(wǎng)絡(luò)( BP 模型)是目前神經(jīng)網(wǎng)絡(luò)領(lǐng)域研究最多應(yīng)用最廣的網(wǎng)絡(luò)模型。其非線性逼近能力是它博得青睞的主要原因,而 BP算法作為前饋網(wǎng)絡(luò)的主要學(xué)習(xí)算法,則無可爭(zhēng)議的對(duì)其推廣應(yīng)用起了舉足輕重的促進(jìn)作用。 BP算法因其簡(jiǎn)單、易行、計(jì)算量小、并行性強(qiáng)等優(yōu)點(diǎn), 是目前神經(jīng)網(wǎng)絡(luò)訓(xùn)練采用最多也是最為成熟的訓(xùn)練算法之一。然而,由 B

7、P 算法是一種梯度下降搜索方法,因而不可避免地存在固有的不足, 如易陷入誤差函數(shù)的局部極值點(diǎn), 而且對(duì)于較大搜索空間、 多峰值和不可微函數(shù)也不能有效搜索到全局極小點(diǎn), 而遺傳算法則是克服這一不足的有效解決方法, 主要是因?yàn)檫z傳算法是一種全局優(yōu)化搜索算法, 因而能夠避開局部極小點(diǎn),而且在進(jìn)化過程中也無需提供所要解決問題的梯度信息。3遺傳算法優(yōu)化BP 神經(jīng)網(wǎng)絡(luò)1 遺傳算法優(yōu)化 BP 神經(jīng)網(wǎng)絡(luò)算法流程利用遺傳算法來訓(xùn)練神經(jīng)網(wǎng)絡(luò)的大部分工作是預(yù)先固定好網(wǎng)絡(luò)的拓?fù)洌?而后用遺傳算法優(yōu)化神經(jīng)網(wǎng)絡(luò)的權(quán)重。進(jìn)化訓(xùn)練方法可分為兩個(gè)主要步驟:( 1)決定網(wǎng)絡(luò)連接權(quán)重的編碼方案; ( 2)用遺傳算法完成進(jìn)化。對(duì)于固

8、定的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),進(jìn)化網(wǎng)絡(luò)連接權(quán)重的過程典型地分為以下幾個(gè)步驟:( 1)確定權(quán)重編碼方案,生成初始群體;( 2)解碼群體中每個(gè)個(gè)體,構(gòu)造出相應(yīng)的神經(jīng)網(wǎng)絡(luò);( 3)根據(jù)一定的性能評(píng)價(jià)準(zhǔn)則(如均方差、學(xué)習(xí)速度等)計(jì)算網(wǎng)絡(luò)適合度;( 4)根據(jù)適合度大小決定各個(gè)個(gè)體繁衍后代的概率,完成選種;( 5)按照一定的概率,對(duì)選種后群體施以遺傳算子(如交配、突變等)得到新一代群體;( 6)返回( 2),直至滿足性能要求。2 遺傳算法實(shí)現(xiàn)遺傳算法優(yōu)化神經(jīng)網(wǎng)絡(luò)是用遺傳算法來優(yōu)化 BP 神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值, 使優(yōu)化后的 BP 神經(jīng)網(wǎng)絡(luò)能夠更好的預(yù)測(cè)輸出。 遺傳算法優(yōu)化 BP 神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)步驟如下:(1) 編碼

9、方式神經(jīng)網(wǎng)絡(luò)的權(quán)值學(xué)習(xí)是一個(gè)復(fù)雜的連續(xù)參數(shù)優(yōu)化問題,如果采用二進(jìn)制編碼, 會(huì)造成編碼串過長,且需要再解碼為實(shí)數(shù),使權(quán)值變化為步進(jìn),影響學(xué)習(xí)精度。本文采用實(shí)數(shù)編碼, 神經(jīng)網(wǎng)絡(luò)的各個(gè)權(quán)值按照一定的順序級(jí)聯(lián)為一個(gè)長串,串上的每一個(gè)位置對(duì)應(yīng)著網(wǎng)絡(luò)的一個(gè)權(quán)值。編碼串的順序按照從輸入到輸出的順序排列。(2) 適應(yīng)度函數(shù)計(jì)算將個(gè)體上表示的各連接權(quán)值按照對(duì)應(yīng)方式分配到給定的網(wǎng)絡(luò)結(jié)構(gòu)中, 網(wǎng)絡(luò)以訓(xùn)練集樣本為輸入輸出,運(yùn)行后返回均方差誤差 mse,其中最大的 mse,表示為 msemax。則個(gè)體適應(yīng)度值 F ,計(jì)算公式為式中, mse 為網(wǎng)絡(luò)的均方誤差; Nsample 為訓(xùn)練樣本總數(shù); Y 為網(wǎng)絡(luò)輸出; y 為

10、樣本實(shí)際輸出;當(dāng) F 在一定程度上接近 1 時(shí),即被認(rèn)為達(dá)到網(wǎng)絡(luò)的精度要求。(3) 初始化過程網(wǎng)絡(luò)的各權(quán)值按照下式隨機(jī)確定:在 BP 算法中,初始權(quán)值一般?。?-1.0 ,+1.0 )均勻分布的隨機(jī)數(shù)。(4) 選擇操作遺傳算法選擇操作有輪盤賭法、 錦標(biāo)賽法等多種方法, 本文選擇輪盤賭法, 即基于適應(yīng)度比例的選擇策略,每個(gè)個(gè)體 i 的選擇概率 pi 為式中, Fi 為個(gè)體 i 的適應(yīng)度值,由于適應(yīng)度值越小越好,所以在個(gè)體選擇前對(duì)適應(yīng)度值求倒數(shù); k 為系數(shù); N 為種群個(gè)體數(shù)目。(5) 交叉操作由于個(gè)體采用實(shí)數(shù)編碼, 所以交叉操作方法采用實(shí)數(shù)交叉法, 第 k 個(gè)染色體 ak 和第 l 個(gè)染色體

11、ai 在 j 位的交叉操作方法如下:式中, b 是0,1 間的隨機(jī)數(shù)。(6) 變異操作選取第 i個(gè)個(gè)體的第 j個(gè)基因 aij進(jìn)行變異,變異操作方法如下:式中,amax為基因 aij 的上界; amin 為基因 aij 的下屆; f(g)=r2(1-g/Gmax) ; r2 為一個(gè)隨機(jī)數(shù); g 為當(dāng)前迭代次數(shù); Gmax是最大進(jìn)化次數(shù); r 為0,1 間的隨機(jī)數(shù)。3仿真實(shí)例我們選取了神經(jīng)網(wǎng)絡(luò)應(yīng)用比較廣泛的函數(shù)逼近來驗(yàn)證算法的可行性及有效性, 選取下面的函數(shù)作為仿真對(duì)象:用單一的梯度下降法或者遺傳算法只能以較低的精度來逼近, 如果要提高逼近的精度,梯度下降法很容易陷入局部極小值, 遺傳算法能夠迅速

12、收斂到精度誤差最優(yōu)點(diǎn)的鄰域內(nèi),實(shí)現(xiàn)最終收斂比較困難。本文分別采用梯度下降法BP 神經(jīng)網(wǎng)絡(luò)和本文提出的混合算法神經(jīng)網(wǎng)絡(luò)來逼近此函數(shù), 遺傳算法優(yōu)化得到的 BP 神經(jīng)網(wǎng)絡(luò)最優(yōu)初始權(quán)值和閾值如表 1 所示,遺傳算法優(yōu)化得到的 BP 神經(jīng)網(wǎng)絡(luò)最優(yōu)個(gè)體適應(yīng)度值如圖 1 所示,把初始權(quán)值和閾值賦給神經(jīng)網(wǎng)絡(luò), 用訓(xùn)練數(shù)據(jù)訓(xùn)練 100 次后預(yù)測(cè)函數(shù)輸出, 未優(yōu)化的網(wǎng)絡(luò)預(yù)測(cè)誤差和優(yōu)化后的網(wǎng)絡(luò)預(yù)測(cè)誤差對(duì)比曲線如圖2 所示。從圖 2 可以看出,遺傳算法優(yōu)化的 BP 網(wǎng)絡(luò)預(yù)測(cè)更加精確,并且遺傳算法優(yōu)化 BP 網(wǎng)絡(luò)的均方差為 5.3806 × 10-5, 而未優(yōu)化的 BP 網(wǎng)絡(luò)的均方誤差為 1.8876 × 10-4 ,預(yù)測(cè)均方誤差也得到了很大的改善。4結(jié)論為了改善 BP 神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法易陷入局部極小的缺陷, 結(jié)合遺傳算法和梯度下降法,本文提出了一種新的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練算法。 該算法能夠充分發(fā)揮兩種算法的

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論