任玉艷,王洪瑞,鮑潔
(1.燕山大學(xué)里仁學(xué)院,河北秦皇島 066004;2.河北大學(xué)電子信息工程學(xué)院,河北保定 071002;3.國家發(fā)展和改革委員會國家投資項目評審中心,北京 100037)
粒子群優(yōu)化BP網(wǎng)絡(luò)及其應(yīng)用
任玉艷1,王洪瑞2,鮑潔3
(1.燕山大學(xué)里仁學(xué)院,河北秦皇島 066004;2.河北大學(xué)電子信息工程學(xué)院,河北保定 071002;3.國家發(fā)展和改革委員會國家投資項目評審中心,北京 100037)
提出一種基于量子激勵粒子群算法優(yōu)化BP網(wǎng)絡(luò)的參數(shù)方法.該算法在粒子群優(yōu)化算法中引入量子論思想,克服了傳統(tǒng)粒子群算法易陷入局部極值、優(yōu)化效果較差的缺點,最終得到BP網(wǎng)絡(luò)的最佳參數(shù)值.利用優(yōu)化后的BP網(wǎng)絡(luò)控制仿生機器馬的運動狀態(tài),仿真結(jié)果表明該算法能快速、準(zhǔn)確地達到最佳控制效果.
BP網(wǎng)絡(luò);粒子群算法(PSO);量子論;優(yōu)化算法;仿生機器馬
近年來隨著人們生活水平的不斷提高,自身健康受到越來越多的關(guān)注.騎馬是一項行之有效的鍛煉方式,然而在都市中很難有時間和場地去實現(xiàn).仿生機器馬運動器是用六自由度機器人平臺模擬馬的奔跑姿勢,通過對于運動者動態(tài)變化的生理指標(biāo)數(shù)據(jù)的融合分析準(zhǔn)確快速的控制機器馬的運動狀態(tài),以達到最好的鍛煉效果.針對人體生理指標(biāo)非線性、多變性以及耦合性的特點,采用BP網(wǎng)絡(luò)實現(xiàn)生理融合,控制仿生機器馬運動狀態(tài).
BP神經(jīng)網(wǎng)絡(luò)由于其簡單易于實現(xiàn),是一種在ANN中應(yīng)用十分廣泛的多層前饋神經(jīng)網(wǎng)絡(luò),但是傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)采用梯度下降法,易陷入局部極小值,并且收斂速度較慢[1-2].針對BP網(wǎng)絡(luò)的缺陷,國內(nèi)外學(xué)者提出了很多改進方法,其中基于計算智能的算法如遺傳算法、蟻群算法和粒子群優(yōu)化算法等較為多見[3-7].
具有量子行為的粒子群優(yōu)化算法是繼粒子群優(yōu)化算法后,提出的一種新型、高效的進化算法,但其仍不可避免地遇到早熟收斂的問題[8].本文將量子原理和傳統(tǒng)的粒子群優(yōu)化算法結(jié)合,提出了一種量子激勵的粒子群優(yōu)化算法調(diào)整BP網(wǎng)絡(luò)參數(shù),可提高粒子群體的多樣性使其有效地跳出局部極值點,得到BP網(wǎng)絡(luò)的最佳參數(shù)值.
1.1 量子激勵的PSO優(yōu)化算法
粒子群優(yōu)化算法(PSO)是模擬鳥類捕食行為的一種基于種群的隨機優(yōu)化技術(shù).設(shè)在N維搜索空間中,共有m個粒子,第i個粒子的位置為xi=(xi1,xi2,…,xiN),(i=1,2,…,m).第i個粒子自身經(jīng)歷的最佳位置為Pi=(Pil,Pi2,…,PiN),每個粒子的飛行速度V i=(vi1,vi2,…,viN).在整個群體中,所有粒子經(jīng)歷的最佳位置為Pg=(Pg1,Pg2,…,PgN).對每一代粒子,其第n維(1≤n≤N)的速度和位置根據(jù)公式(1),(2)迭代,
式中:t為進化代數(shù);ω為慣性權(quán)值,用于平衡全局搜索和局部搜索;rand是在[0,1]內(nèi)變化的隨機數(shù);c1,c2是學(xué)習(xí)因子,為正常數(shù).
本文提出的量子激勵的粒子群優(yōu)化算法是利用量子原理產(chǎn)生PSO的子代.在使用標(biāo)準(zhǔn)PSO公式(1),(2)更新粒子群的位置和速度后,從先前PSO粒子群位置中適應(yīng)值最好的當(dāng)中隨機選擇一個粒子(Pbest),用以完成量子操作.這樣通過改變粒子群中的最優(yōu)粒子(gbest)產(chǎn)生子代.計算子代的適應(yīng)值,當(dāng)子代有更好的適應(yīng)值時,用子代代替gbest,這點確保了最優(yōu)粒子的適應(yīng)值等于或者超過了前一代的適應(yīng)值.從而使PSO擺脫陷于局部極值的缺陷,提高了算法的收斂速度和精度.
由不確定理論可知,量子界中的粒子的位置和速度不能同時確定.QPSO和標(biāo)準(zhǔn)PSO的區(qū)別主要在于位置x和速度v的準(zhǔn)確值不能確定.因此通過Delta技術(shù)可將在量子空間中搜索特定區(qū)域的粒子映射到其解空間的實際位置.量子激勵的粒子群優(yōu)化算法使用一種基于概率密度函數(shù)的Delta參數(shù)幫助粒子收斂.位置更新公式由式(3)替換.
式中,mbest是平均最優(yōu)位置,定義如下:
式中,S是種群中粒子的個數(shù).
β稱為創(chuàng)造因子,是該算法中唯一的參數(shù),負責(zé)控制粒子的收斂速度.式中的加或減各占50%的概率.
1.2 量子激勵的PSO優(yōu)化BP網(wǎng)絡(luò)算法
提出用量子激勵的PSO算法優(yōu)化BP網(wǎng)絡(luò)參數(shù),其基本步驟如下:
1)初始化粒子群,令pbest=x0.
2)計算粒子群的適應(yīng)值fitness,以BP網(wǎng)絡(luò)的誤差E(式(5))作為粒子群的適應(yīng)值的評價函數(shù)
式中,di,oi為期望輸出與實際輸出;N為輸出向量維數(shù).
3)如果fitness(i)<fitness(pbest),則pbest=x,gbest=min(pbest),否則按照公式(1),(2)更新v和x(fitness(i)為第i個粒子的適應(yīng)度).
4)根據(jù)公式(4)計算mbest.
6)如果fitness(xt+1)<fitness(gbest),則gbest=xt+1.
7)若滿足最在迭代次數(shù),則停止搜索,得到優(yōu)化的BP網(wǎng)絡(luò)參數(shù);否則返回步驟2).
以仿生機器馬為應(yīng)用對象,較為真實地模擬馬的多種運動方式,如走、慢跑、快跑、疾馳等.通過實時采集騎馬者的一些生理指標(biāo),進行生理信息融合來控制機器馬的運動狀態(tài),達到最佳鍛煉效果.
本文采用的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為5-8-1,輸入分別為心率(HR)、血氧(SaO2)、血壓(BP)、年齡(Age)、性別(Sex),輸出為仿生機器馬的虛擬速度(v),如圖1所示.
采用某醫(yī)院提供的300組生理數(shù)據(jù)作為樣本,分別使用PSO、量子激勵PSO(新PSO)方法訓(xùn)練BP神經(jīng)網(wǎng)絡(luò).傳統(tǒng)PSO、量子激勵 PSO參數(shù)選取:粒子群數(shù)目為40,c1=c2=2,最大迭代遍數(shù)為1 000,ω從0.9線性減到0.4,β從0.5線性增長到1.進行訓(xùn)練時的誤差比較曲線如圖2所示.從圖2可以看出,無論訓(xùn)練誤差還是檢驗誤差,提出的量子激勵的PSO算法比傳統(tǒng)的PSO算法要小很多,從而表明量子激勵的PSO算法有很強的學(xué)習(xí)能力和泛化能力.
圖1 BP網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 BP network
圖2 量子激勵PSO-BP與傳統(tǒng)PSO-BP模型的誤差對比Fig.2 Error com parison of quantum particle swarm optim ized BP network and particle swarm optim ized BP network
由于BP神經(jīng)網(wǎng)絡(luò)具有很強的魯棒性、容錯性和自學(xué)習(xí)功能等,可以用作仿生機器馬虛擬速度的預(yù)測,但其缺點是容易陷入局部極小,使得收斂效果不明顯,本文在粒子群優(yōu)化算法中引入量子論思想,克服了傳統(tǒng)粒子群算法易陷入局部極值、優(yōu)化效果較差的不足.使用該算法優(yōu)化的BP網(wǎng)絡(luò)實現(xiàn)對仿生機器馬虛擬速度的預(yù)測.仿真結(jié)果表明采用改進的 PSO優(yōu)化算法后的BP網(wǎng)絡(luò)比傳統(tǒng)的PSO優(yōu)化的BP網(wǎng)絡(luò)訓(xùn)練精度高,避免了陷入局部極小,可以更加準(zhǔn)確的預(yù)測最佳的虛擬速度,使得機器馬騎乘者在不同的虛擬速度時刻實現(xiàn)不同的騎馬姿勢,讓身體協(xié)調(diào)運動,可以達到最佳的鍛煉效果.
[1]BASHEER IA,HAJM EER M.A rtificial neural netwo rks:fundamentals,computing,design and application[J].Journal of M icrobiological Methods,2000,1(43):3-31.
[2]陳果.神經(jīng)網(wǎng)絡(luò)模型的預(yù)測精度影響因素分析及其優(yōu)化[J].模式識別與人工智能,2005,18(5):528-534.
[3]王晶.蟻群算法優(yōu)化前向神經(jīng)網(wǎng)絡(luò)的一種方法[J].計算機工程與應(yīng)用,2006,42(25):53-55.
[4]師彪,李郁俠,于新花,等.改進粒子群-BP網(wǎng)絡(luò)模型的短期電力負荷預(yù)測[J].計算機應(yīng)用,2009,29(4):1036-1039.
[5]宋乃華,邢清華.一種新的基于粒群優(yōu)化的BP網(wǎng)絡(luò)學(xué)習(xí)算法[J].計算機工程,2006,32(14):181-183.
[6]任志剛,馮祖仁,柯良軍,等.基于聚類分析的增強型蟻群算法[J].控制與決策,2010,25(8):1201-1206.
[7]田華,石圣羽,宗曉萍.基于不變矩特征及BP神經(jīng)網(wǎng)絡(luò)的圖像模式識別[J].河北大學(xué)學(xué)報:自然科學(xué)版,2008,28(2):214-217.
[8]SUN Jun,FENGBin,XU Wenbo.Particle swarm op timization w ith particles having quantum behavio r[J].CEC2004 Evolutionary Computation Congress,2004(1):325-331.
Algorithm of BP Networks Based on Quantum Particle Swarm Optim ization
REN Yu-yan1,WANGHong-rui2,BAO Jie3
(1.Liren College,Yanshan University,Qinhuangdao 066004,China;2.College of Electronic and Information Engineering,Hebei University,Baoding 071002,China;3.Evaluating and Examining Center,State-Funded Construction Projects,NDRC,Beijing 100037,China)
A new method to adjust weights of BP netwo rk w as p roposed based on quantum particle swarm op timization.This algorithm combined concep ts of particle swarm and quantum p rincip les,w hich overcome the limitations both the local extreme values and op timization result bad by traditional particle sw arm op timization algo rithm,and got the best-op timized parameters of BP netwo rk.U se the op timized BP network to control themotion of bio-mimetic robotic horse.The simulation results show that this algorithm can achieve the best control effect quickly and accurately.
BP netwo rk;particle swarm op timization;quantum p rincip les;op timization;bio-m imetic robotic horse
TP 183
A
1000-1565(2011)04-0445-04
2010-11-06
科技部國際科技合作項目(2008DFR10530);河北省科技廳指導(dǎo)性計劃項目(072135140);秦皇島市科學(xué)技術(shù)研究與發(fā)展計劃項目(201001A 064)
任玉艷(1978-),女,黑龍江虎林人,燕山大學(xué)講師,博士,主要從事多傳感器信息融合與智能算法方向研究.
E-mail:renyuyan2003@yahoo.com.cn
王蘭英)