黃俊康,鄧愷瀟,范千千,林家弘,何慶麟,彭 力,2
(1.華南師范大學(xué) 物理與電信工程學(xué)院,廣東 廣州 510006;2.華南師大(清遠(yuǎn))科技創(chuàng)新研究院有限公司,廣東 清遠(yuǎn) 511517)
聲波可以在空氣、水、生物組織等多種介質(zhì)中傳播.因此,可以利用超聲波來(lái)產(chǎn)生聲輻射力,用以平衡物體的重力,可以使泡沫小球、液滴、生物組織等物體穩(wěn)定地懸浮.
超聲懸浮技術(shù)是無(wú)容器處理的關(guān)鍵技術(shù)之一,在液滴蒸發(fā)[1]、析出動(dòng)力學(xué)[2]、納米微粒操控[3]、蛋白質(zhì)結(jié)晶[4]等領(lǐng)域有廣泛的應(yīng)用.超聲相控陣可以對(duì)輕小物體進(jìn)行精細(xì)地操控,有很廣泛的應(yīng)用前景[5].2015 年 Marzo[5]等人利用并比較了聲鑷、聲渦和聲杯三種聲勢(shì)阱的特點(diǎn),拓寬了超聲相控陣對(duì)粒子的操控方式,可以實(shí)現(xiàn)粒子的三維移動(dòng)和原地旋轉(zhuǎn).在此之前,超聲相控陣主要通過(guò)改變駐波的位置來(lái)實(shí)現(xiàn)對(duì)粒子的操控,這種方式在粒子操控范圍上和操控粒子的數(shù)量上都有很大的局限性.2018年,Marzo[6]等人使用 16×16的超聲相控陣實(shí)現(xiàn)了全息聲鑷,其具有與全息光鑷相似的功能,它可以獨(dú)立操控多個(gè)多種材質(zhì)的粒子,并且適用于多種媒介(如空氣、水、生物組織).
超聲相控陣對(duì)粒子精確操控的關(guān)鍵技術(shù)之一是求出各換能器的最優(yōu)相位延遲.通過(guò)優(yōu)化調(diào)控?fù)Q能器的相位延遲,使各換能器處于最優(yōu)相位延遲,以便在粒子懸浮位置產(chǎn)生穩(wěn)定、抗干擾的聲勢(shì)阱,從而使粒子穩(wěn)定地懸浮.但是在目標(biāo)函數(shù)的計(jì)算上,實(shí)現(xiàn)難度較大.若方法使用不恰當(dāng),容易導(dǎo)致計(jì)算出的結(jié)果不是最優(yōu)解,且計(jì)算的效率低.Marzo[6]等人使用了IB算法對(duì)相位延遲優(yōu)化計(jì)算,但I(xiàn)B算法優(yōu)化計(jì)算相位延遲時(shí)只達(dá)到了 π/16的精度.姜兆田[7]分別使用了BFGS算法和自適應(yīng)遺傳算法(AGA)對(duì)相位延遲優(yōu)化計(jì)算,得到了AGA算法在計(jì)算較大規(guī)模超聲相控陣時(shí)比BFGS算法更具優(yōu)勢(shì)的結(jié)論.
本文設(shè)計(jì)了一種改進(jìn)的AGA算法,其優(yōu)化相位延遲的精度達(dá)π/256.將其與傳統(tǒng)遺傳算法(GA)和AGA算法比較,發(fā)現(xiàn)改進(jìn)AGA算法具有多種優(yōu)勢(shì).本文使用該算法計(jì)算了空間中4個(gè)懸浮點(diǎn)的目標(biāo)函數(shù),發(fā)現(xiàn)都有很好的優(yōu)化結(jié)果,并通過(guò)計(jì)算另兩種陣列模式下的目標(biāo)函數(shù),驗(yàn)證了該算法對(duì)陣列規(guī)模不敏感.此外,本文還搭建了超聲相控陣平臺(tái),將優(yōu)化算法計(jì)算得到的結(jié)果運(yùn)用到對(duì)輕小物體的任意點(diǎn)懸浮實(shí)驗(yàn)中,發(fā)現(xiàn)實(shí)驗(yàn)結(jié)果與仿真結(jié)果相符合,驗(yàn)證了該改進(jìn)AGA算法的可靠性.
超聲相控陣實(shí)現(xiàn)輕小物體的任意點(diǎn)懸浮一般是通過(guò)控制各個(gè)換能器,使它們的相位處在最優(yōu)相位延遲,在輕小物體位置處形成一個(gè)穩(wěn)定、抗干擾的聲勢(shì)阱,從而實(shí)現(xiàn)輕小物體的穩(wěn)定懸浮.目標(biāo)函數(shù)是需要優(yōu)化計(jì)算的函數(shù),產(chǎn)生穩(wěn)定、抗干擾的聲勢(shì)阱要求目標(biāo)函數(shù) O取得最大值[5].


其中 K1、K2為

式中 V表示球形微粒的體積,ρ0是空氣的密度,ρp是懸浮物體的密度,c0是媒介的聲速,cp是懸浮物體中的聲速.
聲壓 p 為[8]

式中N為換能器個(gè)數(shù),ω為圓頻率,ua是最大振幅,a為換能器半徑,θ是換能器中心和空間點(diǎn)的連線與法線的夾角,r為換能器中心與空間點(diǎn)的距離,k為波矢,φ為換能器的相位延遲,J1為一階貝塞爾函數(shù),圖1為換能器輻射的示意圖.

圖1 換能器輻射示意圖
在本文中,不需要讓換能器陣列移動(dòng),因此在這里不需考慮換能器位置的變化.此時(shí)聲壓p只是相位延遲的函數(shù),因此目標(biāo)函數(shù)O也只是相位延遲的函數(shù).但需要計(jì)算出各換能器的最優(yōu)相位延遲,才能使目標(biāo)函數(shù)O值達(dá)到最優(yōu)值,從而在粒子懸浮位置產(chǎn)生穩(wěn)定、抗干擾的聲勢(shì)阱.下一節(jié)將主要從個(gè)體編碼、遺傳算子兩個(gè)方面重點(diǎn)介紹用于計(jì)算最優(yōu)相位延遲的改進(jìn)AGA算法.
遺傳算法中個(gè)體的編碼可采用二進(jìn)制編碼的方式[9].編碼出的染色體長(zhǎng)度由換能器個(gè)數(shù)以及相位延遲精度決定.換能器的相位延遲一般是[0,2π]之間的數(shù),若相位延遲需達(dá)到 π/2m的精度,則需要用m+1位二進(jìn)制數(shù)編碼.若總共有n個(gè)換能器,則染色體總長(zhǎng)度為n(m+1).例如,若總共有2個(gè)換能器,相位延遲分別為 φ1=0.75π,φ2=0.25π,精度要求為π/4,則可以用二進(jìn)制數(shù)011001來(lái)表示.
為了保證計(jì)算結(jié)果有足夠的精度,相位延遲精度需達(dá)到π/256.因?yàn)橄辔谎舆t在[0,2π]范圍內(nèi),故每個(gè)換能器的相位延遲需用9位二進(jìn)制數(shù)來(lái)表示.若有50個(gè)換能器,則50個(gè)換能器的相位延遲數(shù)據(jù)需用450位二進(jìn)制數(shù)表示.這說(shuō)明染色體長(zhǎng)度應(yīng)為450,可見(jiàn)染色體長(zhǎng)度很長(zhǎng).為了加快收斂速率、使收斂更穩(wěn)定和避免出現(xiàn)早熟現(xiàn)象,本文的遺傳算子采用了自適應(yīng)的交叉和變異算子(AGA算法與GA的區(qū)別),同時(shí)改進(jìn)了選擇算子(改進(jìn)AGA算法與AGA算法的區(qū)別).
在傳統(tǒng)的遺傳算法(GA)中,交叉概率 Pc和變異概率Pm固定不變.當(dāng)Pc設(shè)置過(guò)大時(shí),交叉操作容易對(duì)適應(yīng)度較高的個(gè)體的結(jié)構(gòu)產(chǎn)生破壞;當(dāng)Pc設(shè)置過(guò)小時(shí),會(huì)減慢遺傳算法對(duì)最優(yōu)解搜索的速度.當(dāng)Pm設(shè)置過(guò)大時(shí),遺傳算法容易變成隨機(jī)搜索算法,從而失去遺傳算法的優(yōu)勢(shì);而當(dāng)Pm設(shè)置過(guò)小時(shí),很難產(chǎn)生新的個(gè)體結(jié)構(gòu).
考慮到以上的種種缺陷,本文選用自適應(yīng)的交叉和變異算子,該方法根據(jù)進(jìn)化的情況在搜索過(guò)程中動(dòng)態(tài)地調(diào)節(jié)交叉概率和變異概率,其公式為

其中每代種群中的最優(yōu)個(gè)體的適應(yīng)度值為fmax,種群所有個(gè)體的平均適應(yīng)度值為 favg,f為變異個(gè)體的適應(yīng)度值,f′為準(zhǔn)備交叉的兩個(gè)個(gè)體中適應(yīng)度較大的個(gè)體對(duì)應(yīng)的適應(yīng)度值的數(shù)值.k1、k2、k3、k4為系數(shù),其值在[0,1]之間.
在AGA算法中,根據(jù)個(gè)體的適應(yīng)度值自適應(yīng)地調(diào)整 Pc和 Pm,從式(5)、式(6)可以看出,當(dāng)個(gè)體適應(yīng)度值接近最大適應(yīng)度值時(shí),交叉概率Pc和變異概率Pm將變小,當(dāng)個(gè)體適應(yīng)度值等于最大適應(yīng)度值時(shí),交叉概率Pc和變異概率Pm將變?yōu)?.這樣保證了適應(yīng)度高的個(gè)體的優(yōu)良性狀可以更好的保持下來(lái),不被破壞,加快了算法的收斂速率;適應(yīng)度低的個(gè)體交叉和變異概率較高,可以加快其進(jìn)化速率,產(chǎn)成優(yōu)良性狀,避免出現(xiàn)早熟現(xiàn)象.
為了進(jìn)一步提高收斂速率和收斂的穩(wěn)定性,采用輪盤(pán)賭法結(jié)合精英選擇策略的改進(jìn)選擇算子.在輪盤(pán)賭法中,個(gè)體被選擇進(jìn)行遺傳的概率與其適應(yīng)度值f成正比.適應(yīng)度越高,被選中的概率越大;適應(yīng)度越低,被選中的概率就越小.首先對(duì)種群中所有個(gè)體的適應(yīng)度值求和:

可以計(jì)算出某個(gè)體被選中的概率為

然后計(jì)算得到某個(gè)體的累計(jì)選擇概率為

選擇的規(guī)則:隨機(jī)生成一個(gè)[0,1]的實(shí)數(shù) r,若r<Qi,則選擇第i個(gè)個(gè)體,否則使 i+1,然后繼續(xù)進(jìn)行比較.
讓輪盤(pán)轉(zhuǎn)動(dòng)N次,每次都按照以上規(guī)則來(lái)選擇個(gè)體.這樣計(jì)算的結(jié)果與目的是:適應(yīng)度高的個(gè)體有更高的概率將自身優(yōu)良性狀遺傳給下一代;適應(yīng)度低的個(gè)體因?yàn)檫z傳給下一代的概率較小,在代數(shù)不斷更迭過(guò)程中,會(huì)逐漸地被淘汰,從而加快了算法的收斂速率.
精英選擇策略的核心思想是:當(dāng)前種群中適應(yīng)度最高的個(gè)體直接替代適應(yīng)度最低的個(gè)體,并且不參與本次的交叉和變異(若有最高/低適應(yīng)度的個(gè)體有多個(gè),則只取其中一個(gè)).
從上面的分析可以看出,輪盤(pán)賭法并不能保證適應(yīng)度高的個(gè)體一定會(huì)被遺傳到下一代.為了最大限度地保證當(dāng)前種群中適應(yīng)度高的個(gè)體可以將自身優(yōu)良性狀遺傳給下一代,使算法收斂更加穩(wěn)定.因此采用輪盤(pán)賭法和精英選擇策略相結(jié)合的改進(jìn)選擇算子,在加快算法收斂速率的同時(shí),也能使算法收斂更加穩(wěn)定.
改進(jìn)AGA算法的基本步驟流程圖如圖2所示.

圖2 改進(jìn)AGA算法基本步驟流程圖
本文中,換能器半徑為5 mm,發(fā)射超聲波頻率為40 kHz,空氣中聲速取346 m/s,由這兩值可求得聲波的波數(shù)為726 m-1.懸浮物為聚丙乙烯(EPS)小球,密度為 29 kg/m3,聲波在 EPS中傳播速率為900 m/s,空氣的密度為 1.18 kg/m3.因?yàn)樵诒緦?shí)驗(yàn)中目標(biāo)函數(shù)只需取相對(duì)值,所以 K1、K2、C取相對(duì)值,分別為:1.759×10-16、2.945×10-16.種群規(guī)模一般設(shè)置在30~160范圍內(nèi),本文綜合考慮了算法最優(yōu)解的搜索效率和計(jì)算時(shí)間,將種群規(guī)模設(shè)置為50[9],并將遺傳算子參數(shù) k1、k2、k3、k4分別設(shè)為 0.7、0.2、0.4、0.2,并采用隨機(jī)生成的方式初始化種群.
分別使用改進(jìn)AGA算法、AGA算法和GA算法計(jì)算相同的目標(biāo)函數(shù),得到三者的執(zhí)行結(jié)果如圖3所示.
從圖3中可見(jiàn),AGA算法在收斂速率和最終解兩方面都優(yōu)于GA算法,說(shuō)明自適應(yīng)的交叉和變異算子可以有效地提高算法的收斂速率和最終解最優(yōu)個(gè)體的適應(yīng)度值.在收斂效果方面,改進(jìn)AGA算法更穩(wěn)定,AGA算法收斂存在頻繁跳變的情況;在最終解方面,改進(jìn) AGA算法的最優(yōu)個(gè)體適應(yīng)度值較AGA算法更大.所以改進(jìn)遺傳算子,使改進(jìn)AGA算法在收斂速率、最終解最優(yōu)個(gè)體的適應(yīng)度值和收斂的穩(wěn)定性三方面較AGA算法和GA算法更有優(yōu)勢(shì).

圖3 三種遺傳算法執(zhí)行結(jié)果圖
為了驗(yàn)證改進(jìn)AGA算法對(duì)空間任意懸浮點(diǎn)都有良好的優(yōu)化效果,以上下5×5陣列為例,并在裝置中軸線上取了不同高度的兩點(diǎn)(25,25,30)mm,(25,25,45)mm,以及裝置中軸線外的不同高度的兩點(diǎn)(15,25,30)mm,(15,25,45)mm(如圖 4所示,小球懸浮位置即為圖4中黑點(diǎn)處).使用改進(jìn)AGA算法計(jì)算這4個(gè)懸浮點(diǎn)的各換能器的最優(yōu)相位延遲,并得到了如圖5所示的對(duì)應(yīng)目標(biāo)函數(shù)優(yōu)化結(jié)果(圓圈處為小球懸浮位置).

圖4 懸浮位置示意圖

圖5 任意點(diǎn)懸浮目標(biāo)函數(shù)優(yōu)化效果圖
從圖5中可以看出,在4個(gè)懸浮點(diǎn)(圖中圓圈)周圍目標(biāo)函數(shù)取得了最優(yōu)值.在懸浮點(diǎn)處產(chǎn)生了穩(wěn)定、抗干擾的聲勢(shì)阱.
為了探究改進(jìn)AGA算法對(duì)陣列規(guī)模的敏感性,采用了上下4×4陣列和6×6陣列兩種規(guī)模的陣列(如圖6所示).小球懸浮位置即為圖中黑點(diǎn)處,坐標(biāo)分別為(20,20,30)mm,(30,30,30)mm.

圖6 兩種規(guī)模陣列懸浮點(diǎn)位置示意圖
使用改進(jìn)AGA算法優(yōu)化目標(biāo)函數(shù),分別計(jì)算出這兩種陣列模式的各換能器最優(yōu)相位延遲.目標(biāo)函數(shù)的優(yōu)化結(jié)果以及各換能器最優(yōu)相位延遲如圖7所示.

圖7 不同規(guī)模陣列優(yōu)化結(jié)果和最優(yōu)相位延遲圖
在兩種陣列模式的目標(biāo)函數(shù)的優(yōu)化結(jié)果圖中(圖7),可見(jiàn)在小球懸浮位置處都取得了最優(yōu)的目標(biāo)函數(shù)值,說(shuō)明該優(yōu)化算法對(duì)不同規(guī)模的超聲相控陣都適用,即的改進(jìn)AGA算法對(duì)陣列規(guī)模不敏感.
本文搭建了上下平行5×5的超聲相控陣,利用FPGA產(chǎn)生兩組25路40 kHz的方波信號(hào),并且方波的相位延遲控制精度可達(dá)到π/1 250.通過(guò)電腦串口可以將計(jì)算得到的各換能器最優(yōu)相位延遲數(shù)據(jù)傳輸?shù)紽PGA上,從而實(shí)現(xiàn)對(duì)各個(gè)換能器相位的操控.裝置示意圖如圖8所示.

圖8 裝置示意圖
將各個(gè)換能器最優(yōu)相位延遲數(shù)據(jù)傳輸給FPGA后,分別在(25,25,30)mm、(25,25,45)mm、(15,25,30)mm、(15,25,45)mm 四個(gè)位置處放置小球,經(jīng)后期處理將目標(biāo)函數(shù)優(yōu)化結(jié)果的圖像與實(shí)驗(yàn)拍攝的實(shí)物小球懸浮圖像疊加起來(lái)(如圖9所示).從圖中可見(jiàn)實(shí)物小球懸浮位置處于目標(biāo)函數(shù)最優(yōu)區(qū)域,實(shí)驗(yàn)結(jié)果與實(shí)驗(yàn)仿真結(jié)果吻合,驗(yàn)證了算法的可靠性.

圖9 任意點(diǎn)懸浮實(shí)驗(yàn)圖
相位延遲優(yōu)化算法是超聲相控陣實(shí)現(xiàn)任意點(diǎn)懸浮的關(guān)鍵,也是難點(diǎn).本文將輪盤(pán)賭法和精英選擇策略相結(jié)合作為選擇算子,改進(jìn)了AGA算法.該改進(jìn)AGA算法在對(duì)目標(biāo)函數(shù)的優(yōu)化上,與GA算法以及AGA算法比較,有收斂速度更快、收斂更穩(wěn)定以及目標(biāo)函數(shù)最優(yōu)解更優(yōu)的優(yōu)勢(shì).本文對(duì)算法進(jìn)行了敏感性分析,發(fā)現(xiàn)算法對(duì)陣列規(guī)模不敏感,算法適用于多種陣列規(guī)模.此外,通過(guò)實(shí)驗(yàn)仿真和現(xiàn)場(chǎng)實(shí)驗(yàn)驗(yàn)證了運(yùn)用該算法,能夠在懸浮點(diǎn)處產(chǎn)生穩(wěn)定且抗干擾的聲勢(shì)阱,從而實(shí)現(xiàn)輕小物體的任意點(diǎn)懸浮.