田雨波 陳 風(fēng)
(江蘇科技大學(xué)電子信息學(xué)院,江蘇鎮(zhèn)江212003)
基于顯卡的微帶天線諧振頻率神經(jīng)網(wǎng)絡(luò)建模
田雨波 陳 風(fēng)
(江蘇科技大學(xué)電子信息學(xué)院,江蘇鎮(zhèn)江212003)
諧振頻率是微帶天線(Microstrip Antennas,MSA)設(shè)計(jì)過(guò)程中最重要的一個(gè)參數(shù).針對(duì)粒子群神經(jīng)網(wǎng)絡(luò)(Particle Swarm Optimization-Neural Network,PSO-NN)對(duì)矩形MSA諧振頻率建模所面臨的計(jì)算時(shí)間過(guò)長(zhǎng)以及模型精度不高等問(wèn)題,提出一種基于圖形處理單元(Graphic Processing Unit,GPU)技術(shù)的并行處理解決方案.該方法使用粒子與線程一一對(duì)應(yīng)的并行策略,通過(guò)并行處理各個(gè)粒子的計(jì)算過(guò)程來(lái)加快整個(gè)粒子群的收斂速度,從而減少NN的訓(xùn)練時(shí)間.在統(tǒng)一計(jì)算設(shè)備架構(gòu)下對(duì)矩形MSA諧振頻率進(jìn)行了PSO-NN建模,數(shù)值計(jì)算結(jié)果表明:相對(duì)于CPU端串行PSO-NN,GPU端并行PSONN在尋優(yōu)穩(wěn)定性一致的前提下取得了超過(guò)300倍的計(jì)算加速比;在GPU端大幅增加粒子數(shù),能在運(yùn)行時(shí)間增加極為有限的情況下大幅降低建模的網(wǎng)絡(luò)誤差.
微帶天線;諧振頻率;粒子群優(yōu)化;神經(jīng)網(wǎng)絡(luò);圖形處理器
微帶天線(Microstrip Antennas,MSA)具有諸多優(yōu)點(diǎn)而獲得了廣泛應(yīng)用[1-2],其中諧振頻率是MSA設(shè)計(jì)過(guò)程中最重要的一個(gè)參數(shù).人工神經(jīng)網(wǎng)絡(luò)(Neural Network,NN)模型由于具有良好的學(xué)習(xí)和泛化能力,已被廣泛應(yīng)用于電磁領(lǐng)域[3-4],也被用于MSA諧振頻率建模問(wèn)題[5-6].粒子群優(yōu)化(Particle Swarm Optimization,PSO)作為一種容易實(shí)現(xiàn)、收斂速度快的全局優(yōu)化算法,正在被逐漸地應(yīng)用到NN的訓(xùn)練中,能夠獲得比常用的誤差反向傳播(Back Propagation,BP)NN更好的收斂精度和更強(qiáng)的預(yù)測(cè)能力,基于PSO的NN也被用于MSA諧振頻率建模問(wèn)題[7-9].
面對(duì)復(fù)雜度較高的問(wèn)題時(shí),訓(xùn)練時(shí)間長(zhǎng)是粒子群神經(jīng)網(wǎng)絡(luò)(PSO-NN)的一大問(wèn)題,并行化加速是解決該問(wèn)題的有效思路.除了NN固有的存儲(chǔ)結(jié)構(gòu)和樣本訓(xùn)練的并行性[10],PSO-NN還存在PSO算法天然具備的群體中個(gè)體行為的并行性.相比用計(jì)算機(jī)集群[11]、多核CPU[12]或FPGA等專業(yè)并行設(shè)備[13]加速PSO算法,利用圖形處理器(Graphic Processing Unit,GPU)并行加速PSO算法[14-17]具備硬件成本低的最顯著優(yōu)勢(shì).特別是2007年NVIDIA公司推出統(tǒng)一計(jì)算設(shè)備架構(gòu)(Compute U-nified Device Architecture,CUDA)后,CUDA C因其強(qiáng)大的可編程性已成為當(dāng)前最為流行的GPU編程語(yǔ)言.Veronese等于2009年首次應(yīng)用CUDA實(shí)現(xiàn)了對(duì)PSO算法的并行加速[14].張慶科等在文獻(xiàn)[16]中概述了CUDA架構(gòu)下包括PSO算法在內(nèi)的5種典型優(yōu)化算法的并行實(shí)現(xiàn)過(guò)程.蔡勇等近期在文獻(xiàn)[17]中給出了并行PSO算法較詳細(xì)的設(shè)計(jì)思路和優(yōu)化方法,取得了90倍的加速比.
在基于GPU技術(shù)加速PSO算法研究的基礎(chǔ)上,設(shè)計(jì)并實(shí)現(xiàn)了一種基于CUDA架構(gòu)的PSO-NN并行求解方法,并對(duì)矩形MSA諧振頻率進(jìn)行了快速建模.實(shí)驗(yàn)結(jié)果表明:若CPU端使用和GPU端相同的粒子數(shù),該方法能大幅減少建模所需時(shí)間,相對(duì)于CPU端串行PSO-NN,GPU端并行PSO-NN在保證訓(xùn)練誤差的前提下取得了超過(guò)300倍的計(jì)算加速比;若GPU端使用比CPU端多的多的粒子數(shù),該方法能在運(yùn)行時(shí)間增加極為有限的情況下大幅降低建模的網(wǎng)絡(luò)誤差,得到的結(jié)果明顯優(yōu)于該問(wèn)題已有文獻(xiàn)的結(jié)果.
對(duì)于一寬為W、長(zhǎng)為L(zhǎng)的矩形MSA,介質(zhì)基片的厚度為h,相對(duì)介電常數(shù)為εr,則該MSA的諧振頻率fmn為[1-2]
式中:εe是有效相對(duì)介電常數(shù);c是電磁波在真空中的傳播速度;m和n是整數(shù);Le和We是MSA的有效尺寸.當(dāng)計(jì)算矩形MSA在主模式TM10下的諧振頻率時(shí),式(1)可寫成
有效長(zhǎng)度Le可定義為
式中,ΔL是邊界延伸量,與介質(zhì)基片的厚度h有關(guān).
容易看出,矩形MSA的諧振頻率取決于h,εr,m,n以及其幾何尺寸W和L.
2.1 標(biāo)準(zhǔn)PSO-NN
PSO算法是Kennedy和Eberhart于1995年提出的一種基于群體智能的進(jìn)化計(jì)算技術(shù),其概念簡(jiǎn)單、易于實(shí)現(xiàn)、具備較強(qiáng)的收斂和全局搜索能力,因此發(fā)展十分迅速[18],在諸多領(lǐng)域得到成功應(yīng)用.PSO算法用來(lái)優(yōu)化NN,包括NN結(jié)構(gòu)的優(yōu)化和NN權(quán)閾值的優(yōu)化,本文僅討論在NN結(jié)構(gòu)一定的條件下來(lái)優(yōu)化NN的權(quán)閾值.
PSO-NN算法本質(zhì)上就是適應(yīng)度函數(shù)為NN輸出誤差的PSO算法.PSO-NN的核心思想在于粒子與NN之間的3個(gè)對(duì)應(yīng):粒子位置對(duì)應(yīng)NN的權(quán)閾值,粒子速度對(duì)應(yīng)NN權(quán)閾值的變化,粒子適應(yīng)度值對(duì)應(yīng)NN的輸出誤差.使用的PSO算法版本為引入慣性權(quán)重的PSO算法[19].粒子群由N個(gè)粒子組成,每個(gè)粒子的位置代表優(yōu)化問(wèn)題在D維搜索空間(D為NN權(quán)閾值的數(shù)目)中的一個(gè)潛在的解,所有粒子都有一個(gè)由NN輸出誤差決定的適應(yīng)度值,粒子通過(guò)不斷更新速度和位置搜索找到最優(yōu)解.PSO-NN中,采用粒子各維與NN各權(quán)閾值一一對(duì)應(yīng)的原則,將每個(gè)粒子編碼成一個(gè)向量.算法的速度更新公式和位置更新公式如下:
式中:i=1,2,…,N;d=1,2,…,D;c1和c2是學(xué)習(xí)因子,非負(fù)的常數(shù);r1和r2是介于[0,1]的均勻分布的隨機(jī)數(shù);Vid(t)∈[-Vmax,Vmax],Vmax限制了粒子飛行的最大速度,Xid(t)∈[-Xmax,Xmax],Xmax限定了粒子搜索空間的范圍,可設(shè)定Vmax=kXmax,0≤k≤1;w是慣性權(quán)重,介于[0,1],用來(lái)平衡粒子的全局探索能力和局部開(kāi)發(fā)能力.
標(biāo)準(zhǔn)PSO-NN算法的流程如下:
1)讀入訓(xùn)練樣本和測(cè)試樣本,數(shù)據(jù)預(yù)處理,設(shè)定最大迭代次數(shù)Tmax.
2)隨機(jī)初始化每個(gè)粒子的位置Xid(t)和速度Vid(t).
3)初始化個(gè)體最優(yōu)位置Pid,best(t)和全局最優(yōu)位置Gd,best(t).
4)更新每個(gè)粒子的速度Vid(t)和位置Xid(t).
5)計(jì)算每個(gè)粒子對(duì)應(yīng)的適應(yīng)度值(即訓(xùn)練樣本的輸出誤差)F(Xi).
6)更新個(gè)體最優(yōu)位置Pid,best(t)和全局最優(yōu)位置Gd,best(t).
7)若達(dá)到最大迭代次數(shù)Tmax,則執(zhí)行步驟8),否則返回步驟4).
8)計(jì)算訓(xùn)練樣本輸出和測(cè)試樣本輸出.
2.2 CUDA編程模型
CUDA采用CPU和GPU異構(gòu)協(xié)作的編程模式,CPU負(fù)責(zé)串行計(jì)算任務(wù)和控制GPU計(jì)算,GPU以單指令多線程(Single Instruction Multiple Threads,SIMT)執(zhí)行方式負(fù)責(zé)并行計(jì)算任務(wù).內(nèi)核函數(shù)(kernel)執(zhí)行GPU上的并行計(jì)算任務(wù),是整個(gè)程序中的一個(gè)可以被并行執(zhí)行的步驟.CUDA將線程組織成塊網(wǎng)格(Grid)、線程塊(Block)、線程(Thread)三個(gè)不同的層次,并采用多層次的存儲(chǔ)器結(jié)構(gòu):只對(duì)單個(gè)線程可見(jiàn)的本地存儲(chǔ)器,對(duì)塊內(nèi)線程可見(jiàn)的共享存儲(chǔ)器,對(duì)所有線程可見(jiàn)的全局存儲(chǔ)器等.kernel函數(shù)中,Grid內(nèi)的Block之間不可通信,能以任意順序串行或并行地獨(dú)立執(zhí)行;Block內(nèi)的Thread之間可以通信,能通過(guò)存儲(chǔ)共享和柵欄同步有效協(xié)作執(zhí)行.CUDA程序流程通常包括以下6個(gè)步驟:1)分配CPU內(nèi)存并初始化;2)分配GPU內(nèi)存;3)CPU到GPU數(shù)據(jù)傳遞;4)GPU并行計(jì)算;5)計(jì)算結(jié)果從GPU傳回CPU;6)處理傳回到CPU的數(shù)據(jù).
2.3 基于CUDA的并行PSO-NN算法設(shè)計(jì)
為簡(jiǎn)單起見(jiàn),本文使用前述標(biāo)準(zhǔn)PSO-NN算法,采用粒子與線程一一對(duì)應(yīng)的并行策略,利用PSO算法固有的三大并行性:速度更新和位置更新的并行性,計(jì)算粒子適應(yīng)度的并行性,更新Pi,best及其適應(yīng)度值的并行性,以及CUDA架構(gòu)特有的并行性:更新Gbest時(shí)求最小適應(yīng)度值的并行規(guī)約算法.GPU端并行PSO-NN的算法流程設(shè)計(jì)如圖1所示.
GPU端并行PSO-NN算法具體步驟設(shè)計(jì)如下:
1)CPU上讀入訓(xùn)練樣本和測(cè)試樣本,數(shù)據(jù)預(yù)處理.2)CPU上調(diào)用malloc()和cudaMalloc()函數(shù),分別在CPU和GPU上分配變量空間.
3)CPU上初始化粒子的位置、速度等數(shù)據(jù).
4)CPU上調(diào)用cudaMemcpy()函數(shù),將CPU上的粒子數(shù)據(jù)傳至GPU全局內(nèi)存;CPU上調(diào)用cudaMemcpyToSymbol()函數(shù),將CPU上的訓(xùn)練樣本傳至GPU常量?jī)?nèi)存.
5)CPU上調(diào)用kernel函數(shù),執(zhí)行GPU上的并行計(jì)算任務(wù),完成NN的訓(xùn)練.
6)CPU上調(diào)用cudaMemcpy()函數(shù),將GPU上的
有用數(shù)據(jù)傳回至CPU上.
7)CPU上將訓(xùn)練樣本和測(cè)試樣本帶入訓(xùn)練好的NN,查看結(jié)果.
8)CPU上調(diào)用free()和cudaFree()函數(shù),釋放CPU和GPU上已分配的變量空間.
以上步驟中,完成PSO-NN加速訓(xùn)練的步驟5)是整個(gè)算法的核心,其偽代碼如下:
for(i=0;i<generationsNumber;i++)
{
<Renew velocities and positions of each particle>//kernel 1
<Evaluate fitness of each particle>//kernel 2
<Renew Pi,bestof each particle> //kernel 3
<Renew Gbestof all particles> //kernel 4}
應(yīng)用CPU端串行PSO-NN(即2.1節(jié)所述“標(biāo)準(zhǔn)PSO-NN”)和設(shè)計(jì)的GPU端并行PSO-NN分別對(duì)矩形MSA諧振頻率進(jìn)行建模,測(cè)試其加速性能.輸入樣本集合為(W,L,h,εr),相應(yīng)實(shí)際測(cè)得的諧振頻率fME作為輸出,訓(xùn)練好的NN在MSA相關(guān)參數(shù)和實(shí)測(cè)諧振頻率之間建立起映射關(guān)系.實(shí)驗(yàn)所采用的計(jì)算平臺(tái)如表1所示.NN訓(xùn)練和測(cè)試數(shù)據(jù)源于文獻(xiàn)[20-21]的實(shí)驗(yàn)結(jié)果,表2的第2到第5列給出矩形MSA的相關(guān)數(shù)據(jù),第6列給出測(cè)量得到的TM10模式下的諧振頻率,共列出了33個(gè)數(shù)據(jù)集合,其中26個(gè)用于訓(xùn)練NN,剩下的標(biāo)注星號(hào)的7個(gè)用于測(cè)試NN.表3給出文獻(xiàn)[5-9]中各種CPU端NN模型得到的頻率的誤差總和,以方便與本文計(jì)算結(jié)果進(jìn)行對(duì)比.
仿真計(jì)算過(guò)程中,NN結(jié)構(gòu)設(shè)計(jì)為4-10-1,權(quán)閾值數(shù)目(粒子維數(shù))為61.隱層激活函數(shù)選為雙極性S型函數(shù),其表達(dá)式如式(6)所示;輸出層激活函數(shù)選為單極性S型函數(shù),其表達(dá)式如式(7)所示.PSO算法的慣性權(quán)重w取值0.9至0.4線性遞減,學(xué)習(xí)因子c1和c2分別取2.8和1.3,訓(xùn)練次數(shù)Tmax取值1 000.根據(jù)CUDA架構(gòu)的特點(diǎn),將粒子數(shù)目設(shè)計(jì)成32的倍數(shù)值.
“加速比”Siteration是最常用的加速性能指標(biāo),定義為PSO-NN算法在相同粒子數(shù)和相同迭代次數(shù)(文中取1 000次)下CPU程序運(yùn)行時(shí)間Tcpu-iteration和GPU程序運(yùn)行時(shí)間Tgpu-iteration的比值為
根據(jù)上述設(shè)定進(jìn)行數(shù)值測(cè)試,實(shí)驗(yàn)結(jié)果如表4和表2的第7到第17列所示.值得注意的是,表3中的“誤差總和”指訓(xùn)練樣本輸出和測(cè)試樣本輸出實(shí)驗(yàn)值的平均值與理論值之間的絕對(duì)誤差總和;表4中的“平均誤差總和”指訓(xùn)練樣本輸出和測(cè)試樣本輸出的實(shí)驗(yàn)值與理論值之間的絕對(duì)誤差總和的平均值.筆者認(rèn)為,相對(duì)于“誤差總和”,“平均誤差總和”既易于計(jì)算得到,又客觀反映每一次實(shí)驗(yàn)的誤差總和,并且在相同條件下大于“誤差總和”;換句話說(shuō),若表4中的“平均誤差總和”優(yōu)于表3中的“誤差總和”,則一定優(yōu)于表3對(duì)應(yīng)的“平均誤差總和”.表2的第7到第17列給出了GPU端單次實(shí)驗(yàn)誤差總和最接近表4中“平均誤差總和”的那一組實(shí)驗(yàn)數(shù)據(jù).
分析表2~4可得如下結(jié)論:
1)粒子數(shù)越多,獲得的加速比越高,PSO-NN最高獲得了327倍的加速比.隨著粒子數(shù)的翻倍,當(dāng)粒子數(shù)小于等于16 384(實(shí)驗(yàn)所用GPU最大駐留線程數(shù)為26 624),加速比大致翻倍;當(dāng)粒子數(shù)大于等于32 768,加速比仍能增加但增速放緩.
2)GPU端并行PSO-NN具有與CPU端串行PSONN同樣的尋優(yōu)穩(wěn)定性.隨著粒子數(shù)的不斷增多,CPU程序和GPU程序的誤差不斷減小;粒子數(shù)相同時(shí),CPU程序和GPU程序的誤差大致相同或相近.
3)大幅增加粒子數(shù)是適應(yīng)GPU計(jì)算架構(gòu)的特殊方法.通常情況下粒子數(shù)目應(yīng)大于問(wèn)題維數(shù)(實(shí)驗(yàn)中問(wèn)題維數(shù)為61),當(dāng)粒子數(shù)大于等于128時(shí),CPU端PSO-NN能獲得較好的網(wǎng)絡(luò)精度.大幅增大粒子數(shù)目能使粒子在算法初始階段更均勻地覆蓋搜索空間,獲得更強(qiáng)的全局搜索能力,從而減少網(wǎng)絡(luò)誤差;但對(duì)于CPU端PSO-NN,大幅增大粒子數(shù)目也會(huì)大幅增加計(jì)算量,因此對(duì)于較復(fù)雜的優(yōu)化問(wèn)題,粒子數(shù)目一般也僅僅取值100~200,網(wǎng)絡(luò)誤差的減少主要依靠對(duì)算法本身的改進(jìn)來(lái)實(shí)現(xiàn).而隨著粒子數(shù)的增加,與CPU端相比,GPU端的運(yùn)行時(shí)間增加極為有限.GPU端并行PSO-NN的誤差,當(dāng)粒子數(shù)大于等于128時(shí),優(yōu)于文獻(xiàn)[5-6]的結(jié)果;當(dāng)粒子數(shù)大于等于256時(shí),優(yōu)于文獻(xiàn)[8]中PSO-BP-NN混合算法的結(jié)果;當(dāng)粒子數(shù)大于等于4 096時(shí),優(yōu)于文獻(xiàn)[7]中PSO-NN的結(jié)果;當(dāng)粒子數(shù)大于等于32 768時(shí),優(yōu)于包括文獻(xiàn)[9]中BiPSO-NNE在內(nèi)的所有已有文獻(xiàn)的結(jié)果.
筆者給出的使用建議:
1)對(duì)于標(biāo)準(zhǔn)PSO-NN算法,在GPU端大幅增加粒子數(shù),可在運(yùn)行時(shí)間增加極為有限的情況下大幅降低誤差.
2)對(duì)于各類改進(jìn)PSO-NN算法,并不一定適合在GPU端并行化;對(duì)于適合在GPU端運(yùn)行的改進(jìn)PSO-NN算法,能進(jìn)一步提高算法性能.
本文采用CUDA架構(gòu)設(shè)計(jì)了標(biāo)準(zhǔn)PSO-NN的并行加速方案,實(shí)現(xiàn)了PSO-NN對(duì)矩形MSA諧振頻率的快速建模.該方法使用粒子與線程一一對(duì)應(yīng)的并行策略,通過(guò)在GPU端并行處理各個(gè)粒子的計(jì)算過(guò)程來(lái)加快整個(gè)粒子群的收斂速度,從而減少NN的訓(xùn)練時(shí)間.實(shí)驗(yàn)結(jié)果表明:相同粒子數(shù)時(shí),相對(duì)于CPU端串行PSO-NN,GPU端并行PSO-NN可在尋優(yōu)穩(wěn)定性一致的前提下大幅減少建模所需時(shí)間;在GPU端大幅增加粒子數(shù),可在運(yùn)行時(shí)間增加極為有限的情況下大幅降低建模的網(wǎng)絡(luò)誤差,得到的結(jié)果明顯優(yōu)于該問(wèn)題已有文獻(xiàn)的結(jié)果.本文提出的并行PSO-NN可以推廣應(yīng)用到其他類似的微波工程的分析和設(shè)計(jì)中.
[1] WONG K L.Compact and Broadband Microstrip Antennas[M].New York:John Wiley &Sons Inc,2002.
[2] 方大綱.天線理論與微帶天線(英文版)[M].北京:科學(xué)出版社,2007.
[3] 張清河.基于BP神經(jīng)網(wǎng)絡(luò)的介質(zhì)圓柱體逆散射方法研究[J].電波科學(xué)學(xué)報(bào),2010,25(2):398-402.ZHANG Qinghe.Inverse scattering by dielectric circular cylinder based on BP neural networks[J].Chinese Journal of Radio Science,2010,25(2):398-402.(in Chinese)
[4] 劉 昆,楊 了,夏 晴,等.基于神經(jīng)網(wǎng)絡(luò)的導(dǎo)體柱單站微波成像[J].電波科學(xué)學(xué)報(bào),2012,27(5):1056-1060.LIU Kun,YANG Liao,XIA Qing,et al.Monostatic microwave imaging method for conductor cylinder based on neural network[J].Chinese Journal of Radio Science,2012,27(5):1056-1060.(in Chinese)
[5] GUNEY K,SAGIROGLU S,ERLER M.Generalized neural method to determine resonant frequencies of various microstrip antennas[J].International Journal of RF and Microwave Computer-Aided Engineering,2002,12(1):131-139.
[6] SAGIROGLU S,KALINLI A.Determining resonant frequencies of various microstrip antennas within a single neural model trained using parallel tabu search algorithm[J].Electromagnetics,2005,25(6):551-565.
[7] 田雨波,李正強(qiáng),王建華.矩形微帶天線諧振頻率的粒子群神經(jīng)網(wǎng)絡(luò)建模[J].微波學(xué)報(bào),2009,25(5):45-50.TIAN Yubo,LI Zhengqiang,WANG Jianhua.Model resonant frequency of rectangular microstrip antenna based on particle swarm neural network[J].Journal of Microwaves,2009,25(5):45-50.(in Chinese)
[8] 董 躍,田雨波.基于PSO-BP算法的微帶天線諧振頻率神經(jīng)網(wǎng)絡(luò)建模[J].中國(guó)傳媒大學(xué)學(xué)報(bào)自然科學(xué)版,2009,16(2):58-63.DONG Yue,TIAN Yubo.Modeling resonant frequency of microstrip antenna based on neural network trained by PSO-BP algorithm[J].Journal of Communication University of China:Science and Technology,2009,16(2):58-63.(in Chinese)
[9] 田雨波,董 躍.基于神經(jīng)網(wǎng)絡(luò)集成的微帶天線諧振頻率建模[J].電波科學(xué)學(xué)報(bào),2009,24(4):610-616.TIAN Yubo,DONG Yue.Modeling resonant frequency of microstrip antenna based on neural network ensemble[J].Chinese Journal of Radio Science,2009,24(4):610-616.(in Chinese)
[10] PETHICK M,LIDDLE M,WERSTEIN P,et al.Parallelization of a backpropagation neural network on a cluster computer[C]//The Fifteenth IASTED International Conference on Parallel and Distributed Computing and Systems.CA,2003:574-582.
[11] DEEP K,SHARMA S,PANT M.Modified parallel particle swarm optimization for global optimization using message passing interface[C]//2010IEEE Fifth International Conference on Bio-inspired Computing:Theories and Applications.Changsha,September 23-26,2010:1451-1458.
[12] WANG D Z,WU C H,et al.Parallel multi-population particle swarm optimization algorithm for the uncapacitated facility location problem using OpenMP[C]//IEEE Congress on Evolutionary Computation.Hong Kong,June 1-6,2008:1214-1218.
[13] MAEDA Y,MATSUSHITA N.Simultaneous perturbation particle swarm optimization using FPGA[C]//IEEE International Joint Conference on Neural Networks.Orlando,August 12-17,2007:2695-2700.
[14] VERONESE L,KROHLING R.Swarm’s flight:Accelerating the particles using C-CUDA[C]//Proceedings of the IEEE Congress on Evolutionary Computation.Trondheim,May 18-21,2009:3264-3270.
[15] KROMER P,PLATOS J,SNASEL V.A brief sur-vey of advances in particle swarm optimization on graphic processing units[C]//2013IEEE World Congress on Nature and Biologically Inspired Computing.Fargo,August 12-14,2013:182-188.
[16] 張慶科,楊 波,王 琳,等.基于GPU的現(xiàn)代并行優(yōu)化算法[J].計(jì)算機(jī)科學(xué),2012,39(4):304-311.ZHANG Qingke,YANG Bo,WANG Lin,et al.Research on parallel modern optimization algorithms using GPU[J].Computer Science,2012,39(4):304-311.(in Chinese)
[17] 蔡 勇,李光耀,王 琥.基于CUDA的并行粒子群優(yōu)化算法的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用研究,2013,30(8):2415-2418.CAI Yong,LI Guangyao,WANG Hu.Research and implementation of parallel particle swarm optimization based on CUDA[J].Application Research of Computers,2013,30(8):2415-2418.(in Chinese)
[18] POLI R,KENNEDY J,BLACKWELL T.Particle swarm optimization:an overview[J].Swarm Intelligence,2007,1(1):33-57.
[19] SHI Y,EBERHART R.A modified particle swarm optimizer[C]//Proceedings of the IEEE International Conference on Evolutionary Computation.Anchorage,May 4-9,1998:69-73.
[20] KARA M.Closed-form expressions for the resonant frequency of rectangular microstrip antenna elements with thick substrates[J].Microwave and Optical Technology Letters,1996,12(3):131-136.
[21] KARA M.The resonant frequency of rectangular microstrip antenna elements with various substrate thicknesses[J].Microwave and Optical Technology Letters,1996,11(2):55-59.
Modeling resonant frequency of microstrip antenna using GPU-based neural network
TIAN Yubo CHEN Feng
(School of Electronics and Information,Jiangsu University of Science and Technology,Zhenjiang Jiangsu 212003,China)
Resonant frequency is an important parameter in the design process of microstrip antenna(MSA).In order to deal with the issue of the long computing time and low accuracy of training neural network(NN)based on particle swarm optimization(PSO)algorithm when modeling the resonant frequency of rectangular MSA,parallel optimization based on graphic processing unit(GPU)is presented in this paper.The proposed method corresponds one particle to one thread,and deals with a large number of GPU threads in parallel to accelerate the convergence rate of the whole swarm and reduce the computing time of training NN.The resonant frequency of rectangular MSA is modeled based on the parallel PSO algorithm,and the experiments based on compute unified device architecture(CUDA)show that compared with CPU-based sequential PSONN,more than 300times of speedup has achieved in GPU-based parallel PSO-NN with the same calculation precision.Substantially increasing the number of particles on GPU side can significantly reduce the network error with the verylimited runtime increase-ment.
microstrip antennas(MSA);resonant frequency;particle swarm optimization(PSO);neural network(NN);graphic processing unit(GPU)
TN820
A
1005-0388(2015)01-0071-07
田雨波 (1971-),男(滿),遼寧人,江蘇科技大學(xué)教授,博士,主要研究方向?yàn)橛?jì)算智能和群集智能技術(shù)及其電磁應(yīng)用.
陳 風(fēng) (1989-),男,江蘇人,江蘇科技大學(xué)碩士研究生,主要研究方向?yàn)楦咝阅苡?jì)算、計(jì)算智能及其電磁學(xué)應(yīng)用.
田雨波,陳 風(fēng).基于顯卡的微帶天線諧振頻率神經(jīng)網(wǎng)絡(luò)建模[J].電波科學(xué)學(xué)報(bào),2015,30(1):71-77.
10.13443/j.cjors.2014022401
TIAN Yubo,CHEN Feng.Modeling resonant frequency of microstrip antenna using GPU-based neural network[J].Chinese Journal of Radio Science,2015,30(1):71-77.(in Chinese).doi:10.13443/j.cjors.2014022401
2014-02-24
船舶工業(yè)國(guó)防科技預(yù)研基金(10J3.5.2)聯(lián)系人:陳風(fēng)E-mail:1019758367@qq.com