基于動(dòng)態(tài)自適應(yīng)蜣螂算法的WSN覆蓋優(yōu)化
張 "勇, 李 "建, 劉登志
(江蘇海洋大學(xué) 計(jì)算機(jī)工程學(xué)院, 江蘇 連云港 "222005)
摘 "要: 針對(duì)無線傳感器網(wǎng)絡(luò)隨機(jī)部署導(dǎo)致覆蓋率低的問題,文中提出一種動(dòng)態(tài)自適應(yīng)蜣螂算法(ASSDBO)的WSN覆蓋優(yōu)化方法。首先,采用改進(jìn)Tent混沌映射初始化種群,增強(qiáng)種群多樣性;其次,采用自適應(yīng)螺旋搜索策略改進(jìn)蜣螂滾球行為,增強(qiáng)算法的全局搜索能力和收斂速度,并且在蜣螂繁殖和覓食行為中引入動(dòng)態(tài)正弦邊界收斂因子,平衡算法的全局搜索和局部搜索;最后,在竊賊蜣螂中引入白鯨算法引導(dǎo)的蜣螂動(dòng)態(tài)偷竊策略,增強(qiáng)迭代前期種群多樣性和全局搜索能力,在后期專注于局部搜索同時(shí)具備跳出局部最優(yōu)的能力。通過四個(gè)基準(zhǔn)測(cè)試函數(shù)測(cè)試表明,ASSDBO算法具有較快的收斂速度和較高的求解精度,將ASSDBO應(yīng)用到WSN覆蓋優(yōu)化問題上,仿真結(jié)果表明,ASSDBO算法相比于改進(jìn)麻雀算法(ISSA?ICR)、改進(jìn)灰狼算法(IGWO)、改進(jìn)粒子群算法(IPSO),覆蓋率分別提升了4.7%、6.4%、7.5%。
關(guān)鍵詞: 無線傳感器網(wǎng)絡(luò); 覆蓋優(yōu)化; 蜣螂優(yōu)化算法; 節(jié)點(diǎn)調(diào)度; 螺旋搜索; 混沌映射
中圖分類號(hào): TN711?34; TP393 " " " " " " " " " "文獻(xiàn)標(biāo)識(shí)碼: A " " " " " " " " " " 文章編號(hào): 1004?373X(2024)21?0083?08
WSN coverage optimization based on dynamic adaptive dung beetle algorithm
ZHANG Yong, LI Jian, LIU Dengzhi
(School of Computer Engineering, Jiangsu Ocean University, Lianyungang 222005, China)
Abstract: In view of the low coverage due to random deployment of wireless sensor networks (WSNs), a WSN coverage optimization based on dynamic adaptive dung beetle optimization (DBO) algorithm is proposed. Actually, it is an adaptive spiral search for dung beetle optimization (ASSDBO) algorithm. An improved Tent chaotic mapping is used to initialize the population and enhance the population diversity. An adaptive spiral search (ASS) strategy is used to improve dung beetle ball?rolling behavior, so as to enhance the global search capability and convergence speed of the algorithm. A dynamic sinusoidal boundary convergence factor is introduced into dung beetle reproduction and foraging behaviors to balance the global and local searches of the algorithm. A dynamic dung beetle stealing strategy guided by the beluga whale optimization (BWO) algorithm is introduced into stealing dung beetles to enhance the population diversity and global search ability in the period of early iteration, and to focus on the local search in the later period with the ability of jumping out of the local optimum at the same time. The four benchmark function tests show that the ASSDBO algorithm has faster convergence speed and higher solution accuracy. The ASSDBO algorithm is applied to the WSN coverage optimization problem. The simulation results show that the coverage rate of the ASSDBO algorithm is improved by 4.7%, 6.4% and 7.5%, respectively, in comparison with that of the improved sparrow search algorithm?increment of coverage ratio (ISSA?ICR), the improved gray wolf optimization (IGWO) algorithm, and the improved particle swarm optimization (IPSO) algorithm.
Keywords: WSN; coverage optimization; DBO algorithm; node scheduling; spiral search; chaos mapping
0 "引 "言
無線傳感器網(wǎng)絡(luò)[1](Wireless Sensor Network, WSN)一般采用節(jié)點(diǎn)隨機(jī)部署的方法,隨機(jī)部署會(huì)造成節(jié)點(diǎn)冗余,無法實(shí)現(xiàn)監(jiān)測(cè)區(qū)域充分覆蓋。因此需要優(yōu)化節(jié)點(diǎn)部署,使節(jié)點(diǎn)分布更加均勻,這對(duì)增強(qiáng)WSN網(wǎng)絡(luò)性能[2],增加網(wǎng)絡(luò)生存時(shí)間[3]有著重要的意義。
群智能優(yōu)化算法在WSN覆蓋研究中的應(yīng)用越來越廣泛。為了解決WSN覆蓋范圍不充分、節(jié)點(diǎn)分布不均勻的問題,文獻(xiàn)[4]提出基于立方混沌非線性哈里斯鷹優(yōu)化(Harris Hawks Optimization, HHO)算法,顯著提高了WSN的覆蓋率,但這得益于較多的節(jié)點(diǎn)數(shù)量,并未實(shí)現(xiàn)節(jié)點(diǎn)數(shù)量與覆蓋率的本質(zhì)平衡且收斂速度較慢。文獻(xiàn)[5]通過賦予粒子自主思維,改進(jìn)PSO算法提高算法性能,但存在節(jié)點(diǎn)冗余的問題。文獻(xiàn)[6]提出了一種改進(jìn)的鯨魚優(yōu)化算法(Whale Optimization Algorithm, WOA),比鯨魚算法的收斂速度更快,但覆蓋率提升有限。文獻(xiàn)[7]提出多策略融合的灰狼優(yōu)化(Grey Wolf Optimization, GWO)算法,提高了覆蓋率和收斂速度,但是存在節(jié)點(diǎn)冗余。以上文獻(xiàn)表明群智能優(yōu)化算法在WSN覆蓋優(yōu)化中取得了很好的效果,但是還存在節(jié)點(diǎn)冗余和覆蓋空洞的情況,有進(jìn)一步改善的空間。
蜣螂算法是沈波等人在2022年提出的智能優(yōu)化算法,具有良好的全局搜索和局部搜索能力,但是蜣螂算法也存在開發(fā)和搜索不平衡、容易陷入局部最優(yōu)的問題。為了更好地解決WSN覆蓋優(yōu)化問題,本文提出一種動(dòng)態(tài)自適應(yīng)蜣螂優(yōu)化(Adaptive Spiral Search for Dung Beetle Optimization, ASSDBO)算法來研究WSN覆蓋優(yōu)化問題。在DBO算法的基礎(chǔ)上,種群初始化階段引入改進(jìn)Tent混沌映射初始化種群;使用自適應(yīng)螺旋搜索策略改進(jìn)滾球行為,提高了全局搜索能力和收斂速度;在繁殖和覓食行為中引入動(dòng)態(tài)正弦邊界收斂因子,平衡全局搜索和局部搜索;在偷竊行為中引入白鯨算法引導(dǎo)的蜣螂動(dòng)態(tài)偷竊策略,增強(qiáng)種群多樣性和跳出局部最優(yōu)的能力。在相同實(shí)驗(yàn)條件下與其他算法進(jìn)行仿真對(duì)比,本文所提算法有效提升了WSN覆蓋率。
1 "WSN覆蓋模型
假設(shè)在面積為[M×L]的WSN二維平面監(jiān)測(cè)區(qū)域內(nèi),隨機(jī)部署[n]個(gè)同構(gòu)傳感器節(jié)點(diǎn),傳感器節(jié)點(diǎn)集合為[W={W1,W2,…,Wi,…,Wn}],其中,[Wi]表示第[i]個(gè)傳感器節(jié)點(diǎn),坐標(biāo)位置為[(xi,yi)],每個(gè)節(jié)點(diǎn)都具有相同的感知半徑[Rp]和通信半徑[Rc],并且[Rp≤2Rc],目標(biāo)節(jié)點(diǎn)坐標(biāo)位置為[Tj(xj,yj)],則目標(biāo)節(jié)點(diǎn)[Tj]與傳感器節(jié)點(diǎn)[Wi]之間的歐氏距離為:
[d(Wi,Tj)=(xi-xj)2+(yi-yj)2] (1)
若[d(Wi,Tj)≤Rp],則表明目標(biāo)節(jié)點(diǎn)[Tj]可以被節(jié)點(diǎn)[Wi]感知并覆蓋。目標(biāo)節(jié)點(diǎn)[Tj]可以被傳感器節(jié)點(diǎn)[Wi]感知的概率[p(Wi,Tj)]為:
[p(Wi,Tj)=1,d(Wi,Tj)≤Rp0,d(Wi,Tj)gt;Rp] (2)
目標(biāo)區(qū)域內(nèi)某個(gè)目標(biāo)節(jié)點(diǎn)可以被多個(gè)節(jié)點(diǎn)同時(shí)感知,為了提高節(jié)點(diǎn)對(duì)目標(biāo)節(jié)點(diǎn)感知的概率,目標(biāo)節(jié)點(diǎn)被所有節(jié)點(diǎn)聯(lián)合感知的概率可以定義為:
[P(Wi,Tj)=1-i=1n1-p(Wi,Tj)] (3)
目標(biāo)區(qū)域的整體覆蓋率為所有傳感器節(jié)點(diǎn)能監(jiān)測(cè)到區(qū)域的并集與二維平面監(jiān)測(cè)區(qū)域面積的比值,覆蓋率定義為:
[Cov=j=1M×LP(Wi,Tj)M×L] (4)
2 "標(biāo)準(zhǔn)蜣螂算法
蜣螂的糞球有不同的用處,依據(jù)蜣螂對(duì)糞球做出滾球、跳舞、繁殖、覓食、偷竊行為將種群劃分為滾球蜣螂、繁育蜣螂、小蜣螂、竊賊蜣螂。
2.1 "滾球蜣螂
滾球蜣螂負(fù)責(zé)將球滾動(dòng)到安全的地方藏起來,滾球蜣螂會(huì)利用天體信息(尤其是太陽光、偏振光)等作為導(dǎo)航來保證糞球沿著直線滾動(dòng),在搜索空間中,滾球蜣螂沿特定路徑移動(dòng)并更新其位置,滾球蜣螂的位置更新可以定義為:
[xt+1i=xti+α?k?xt-1i+b?xti-xtworst] (5)
式中:[xti]表示第[i]只蜣螂在第[t]次迭代時(shí)的位置信息,[t]表示當(dāng)前迭代的次數(shù);[k]為偏轉(zhuǎn)系數(shù),取值范圍為[k∈(0,0.2]];[b]表示(0,1)之間的常量;[α]為自然系數(shù),賦值為1或者-1;[xti-xtworst]用來模擬光照強(qiáng)度的變化,[xtworst]表示全局最差位置。
當(dāng)滾球蜣螂遇到障礙物無法直線前進(jìn)時(shí),會(huì)通過跳舞行為來重新定位,獲取新的前進(jìn)方向,當(dāng)確定新的方向時(shí),滾球蜣螂繼續(xù)推動(dòng)糞球前進(jìn),跳舞行為位置更新公式為:
[xt+1i=xti+tanθ?xti-xt-1i] (6)
式中[θ]表示取值范圍為[[0,π]]的偏轉(zhuǎn)角度。當(dāng)[θ≠0]、[π2]、[π]時(shí),用式(6)更新位置;當(dāng)[θ=0]、[π2]、[π]時(shí),不用更新滾球蜣螂的位置。
2.2 "繁育蜣螂
在自然界中,雌性蜣螂會(huì)把糞球滾到安全的地方并且藏起來,用作食物或在球中繁育后代,選擇合適的產(chǎn)卵區(qū)域至關(guān)重要,雌性蜣螂的產(chǎn)卵區(qū)域使用邊界選擇策略模擬,該策略定義為:
[Lb*=max{xtobest?(1-R),Lb}Ub*=min{xtobest?(1+R),Ub}] (7)
式中:[Lb*]和[Ub*]分別表示產(chǎn)卵區(qū)域的下界和上界;[xtobest]表示當(dāng)前局部的最優(yōu)位置;[R=1-tTmax],[Tmax]表示最大迭代次數(shù);[Lb]和[Ub]分別表示優(yōu)化問題的下界與上界。
當(dāng)確定了繁育區(qū)域后,雌性蜣螂會(huì)在這個(gè)區(qū)域內(nèi)繁育后代。在DBO算法中,每次迭代過程中的每只雌性蜣螂都僅會(huì)產(chǎn)下一枚卵。由式(7)可以看出,產(chǎn)卵區(qū)域邊界是動(dòng)態(tài)變化的,所以在迭代過程中用于產(chǎn)卵的糞球位置也是動(dòng)態(tài)變化的,產(chǎn)卵糞球位置變化定義為:
[Bt+1i=xtobest+b1?(Bti-Lb*)+b2?(Bti-Ub*)] (8)
式中:[Bti]為第[i]個(gè)產(chǎn)卵糞球在第[t]次迭代時(shí)的位置信息;[b1]和[b2]為相互獨(dú)立的、大小為[1×d]維的隨機(jī)向量,[d]表示優(yōu)化問題的維數(shù)。
2.3 "小蜣螂
長(zhǎng)大的蜣螂會(huì)從土中爬出來覓食,稱之為小蜣螂,小蜣螂的覓食區(qū)域被嚴(yán)格地限制在最佳覓食區(qū)域內(nèi),最佳覓食區(qū)域定義為:
[Lbbest=max{xtlbest?(1-R),Lb}Ubbest=min{xtlbest?(1+R),Ub}] (9)
式中:[Lbbest]和[Ubbest]分別為最佳覓食區(qū)域的下界和上界;[xtlbest]表示全局最優(yōu)位置。其他參數(shù)在式(7)中有定義。因此,小蜣螂在最佳覓食區(qū)域內(nèi)的位置更新定義為:
[xt+1i=xti+C1?(xti-Lbbest)+C2?(xti-Ubbest)] (10)
式中:[xti]表示第[i]只蜣螂在第[t]次迭代時(shí)的位置信息;[C1]為服從正態(tài)分布的隨機(jī)數(shù);[C2]是[(0,1)]之間的隨機(jī)向量。
2.4 "竊賊蜣螂
一些蜣螂會(huì)從其他蜣螂那里偷取糞球,這些蜣螂被稱為竊賊蜣螂。竊賊蜣螂會(huì)在最佳食物位置[xtlbest]附近偷竊食物,在迭代過程中,竊賊蜣螂位置更新公式定義為:
[xt+1i=xtlbest+S×g×xti-xtobest+xti-xtlbest] (11)
式中:[S]是一個(gè)常數(shù);[g]表示大小為[1×d]并且服從正態(tài)分布的隨機(jī)向量。
綜上所述,蜣螂算法是基于蜣螂在自然界的五種行為進(jìn)行模擬,通過將種群劃分成四個(gè)子種群分別執(zhí)行不同的搜索方式來更新位置。DBO算法通過局部搜索和全局搜索相結(jié)合的策略增強(qiáng)全局搜索能力,加快收斂速度。
3 "動(dòng)態(tài)自適應(yīng)蜣螂算法(ASSDBO)
針對(duì)蜣螂算法開發(fā)與探索不平衡,容易陷入局部最優(yōu)等問題,本文提出四個(gè)改進(jìn)措施:增強(qiáng)蜣螂算法的全局搜索能力、增強(qiáng)種群多樣性、加快收斂速度、平衡全局搜索和局部搜索。
3.1 "改進(jìn)Tent混沌映射初始化種群
蜣螂算法在求解優(yōu)化問題時(shí)通常是隨機(jī)初始化種群,隨機(jī)初始化種群可能導(dǎo)致算法在搜索空間中的某些區(qū)域聚焦,從而陷入局部最優(yōu)解。Tent混沌映射具有較好的均勻性和更快的收斂速度,但是Tent映射的復(fù)雜性相對(duì)較低,所以本文提出改進(jìn)Tent混沌映射初始化種群。通過結(jié)合隨機(jī)數(shù)生成和分段線性映射,引入種群邊界,使得種群初始化與邊界呈現(xiàn)相關(guān)性,幫助種群更全面地覆蓋搜索空間,從而增強(qiáng)全局搜索能力和種群多樣性,具體公式如下:
[xn+1=2?xn+rand(0,1)?1N+Ub-Lb2, 0≤xn≤0.52?(1-xn)+rand(0,1)?1N+Ub-Lb2,0.5lt;xn≤1 " " " " ] (12)
式中:[N]為粒子的個(gè)數(shù);Lb和Ub分別表示優(yōu)化問題的下界與上界;[rand(0,1)]為隨機(jī)數(shù)。改進(jìn)的Tent混沌映射頻數(shù)分布圖如圖1所示。
3.2 "自適應(yīng)螺旋搜索改進(jìn)的滾球行為
原始的蜣螂算法的滾球行為缺乏明確的方向性,更新方式過于隨機(jī),沒有明確利用歷史信息或當(dāng)前找到的最優(yōu)解來引導(dǎo)搜索,缺乏蜣螂個(gè)體間的信息交流,不利于后期迭代收斂,且原始螺旋搜索方式固定,無法隨著迭代動(dòng)態(tài)調(diào)整螺旋搜索路徑。因此引入自適應(yīng)螺旋搜索來更新滾球蜣螂位置,具體公式如下:
[xt+1i=xti+α?k?xt-1i+b?xti-xtworst, " "δlt;mxtlbest+eβlcos(2πl(wèi))?xtlbest-xti, " "δ≥m] (13)
[β=e3?cosπ?2-t Tmax] (14)
[l=21+e2t-Tmax 2] (15)
式中:[m∈(0.5,1]];[δ=rand(1)];[Tmax]為最大迭代次數(shù);螺旋線的大小由[β]和[l]共同控制。[β]控制螺旋線的擴(kuò)張或者收縮,[l]提供搜索過程中的隨機(jī)性,允許算法探索新的方向,但是初始[l]∈(0,1)的隨機(jī)數(shù),會(huì)導(dǎo)致算法難以適應(yīng)從全局探索過渡到局部搜索的需求,因此本文將[l]也引入自適應(yīng)性,在不同的搜索階段引入不同的搜索策略,從而增加算法的有效性和魯棒性。隨著迭代的進(jìn)行,螺旋線逐漸變小,在迭代前期,螺旋以較大的范圍進(jìn)行搜索,增強(qiáng)了算法的全局搜索能力,后期以小螺旋形式搜索,能夠?qū)植繀^(qū)域進(jìn)行細(xì)致的搜索,提升了算法的收斂速度。該策略協(xié)調(diào)了算法的開發(fā)能力和探索能力,增強(qiáng)了算法跳出局部最優(yōu)的能力。
3.3 "動(dòng)態(tài)正弦邊界收斂因子
蜣螂算法繁殖行為和覓食行為都被限制在繁殖區(qū)域和覓食區(qū)域內(nèi),區(qū)域面積大小由邊界收斂因子[R=1-t Tmax]控制,前期蜣螂覓食和產(chǎn)卵區(qū)域的面積大,蜣螂個(gè)體能夠?qū)θ謪^(qū)域進(jìn)行搜索,具有更好的全局搜索能力,在后期隨著面積逐漸減小,蜣螂個(gè)體逐漸聚集在最優(yōu)解附近,增強(qiáng)了算法局部搜索的能力,加快了算法收斂速度。因此收斂因子需調(diào)整為前期下降速度比較慢,后期下降速度比較快。文獻(xiàn)[8]提出基于余弦函數(shù)的收斂因子,基于此本文提出動(dòng)態(tài)正弦收斂因子,具體定義如下:
[R=12+12sinπ2?1-2tTmaxp(t)] (16)
[p(t)=1+rf?sin2πtTmax] "(17)
式中:[t]為迭代次數(shù);[Tmax]為最大迭代次數(shù);[rf]為調(diào)節(jié)因子,改變調(diào)節(jié)因子的值可以控制[R]的下降速度。
本文收斂因子與文獻(xiàn)[8][R]以及線性[R]的對(duì)比圖如圖2所示。
3.4 "白鯨算法引導(dǎo)的蜣螂動(dòng)態(tài)偷竊策略
竊賊蜣螂會(huì)在最佳食物源附近偷取其他蜣螂的糞球,這可能導(dǎo)致算法過早收斂于局部最優(yōu)解,減少了解空間的全面探索。隨著算法迭代進(jìn)行,種群個(gè)體可能會(huì)迅速聚集到一個(gè)或幾個(gè)最優(yōu)解附近,導(dǎo)致種群多樣性喪失。這些缺點(diǎn)限制了算法的全局搜索能力,而后期隨著覓食區(qū)域減小,蜣螂個(gè)體都集中在最優(yōu)解附近,容易陷入局部最優(yōu)。
根據(jù)白鯨算法[9]的啟發(fā),在偷竊行為前期引入白鯨算法中的鯨落行為,鯨落行為可以實(shí)現(xiàn)全局搜索和局部搜索的動(dòng)態(tài)平衡,增加種群多樣性,從而提高算法前期的全局搜索能力和避免陷入局部最優(yōu)解的能力,改進(jìn)后的公式可以專注于利用動(dòng)態(tài)步長(zhǎng)和個(gè)體間的差異性來驅(qū)動(dòng)搜索過程,而不是直接向已知的最優(yōu)解靠攏。改進(jìn)后的公式如下:
[xt+1i=xti+η?(xti-xtr)+??xstep] (18)
[xstep=(Ub-Lb)?e-C3?tTmax] (19)
式中:[η]和[?]分別為權(quán)重系數(shù);[xtr]為種群中隨機(jī)選擇的個(gè)體位置,[t]為迭代次數(shù);[Tmax]為最大迭代次數(shù);[C3]是一個(gè)常數(shù),用于調(diào)節(jié)動(dòng)態(tài)步長(zhǎng)隨時(shí)間變化的速率。
在迭代后期隨著覓食區(qū)域逐漸減小,竊賊蜣螂逐漸聚集在當(dāng)前最優(yōu)解附近進(jìn)行搜索,這需要算法有細(xì)致的局部搜索能力,但也可能會(huì)使算法陷入局部最優(yōu)。所以本文引入白鯨算法開發(fā)階段的位置更新策略來改進(jìn)偷竊行為后期的搜索方式,在保持優(yōu)秀局部搜索能力的同時(shí)具備跳出局部最優(yōu)的能力。改進(jìn)后的公式如下:
[xt+1i=xti+r1(xti-xtobest)+r2(xti-xtlbest)+C4?LF(xtr-xti)] (20)
式中:[C4=2r21-tTmax],為強(qiáng)度系數(shù),用來控制Lévy的強(qiáng)度;[r1]、[r2]為(0,1)區(qū)間的隨機(jī)數(shù)。
3.5 "ASSDBO算法流程圖
ASSDBO算法流程圖如圖3所示。
4 "ASSDBO算法求解WSN覆蓋優(yōu)化
在WSN覆蓋優(yōu)化問題中,需要考慮傳感器節(jié)點(diǎn)在目標(biāo)區(qū)域內(nèi)的橫縱坐標(biāo)即[(xi,yi)],所以種群維度[d]設(shè)置為2。蜣螂種群的每個(gè)個(gè)體編碼代表一種傳感器節(jié)點(diǎn)部署方案,通過ASSDBO算法優(yōu)化得到的最優(yōu)個(gè)體即為傳感器節(jié)點(diǎn)最優(yōu)部署方案。ASSDBO算法求解WSN節(jié)點(diǎn)覆蓋優(yōu)化問題步驟如下。
步驟1:參數(shù)初始化。輸入目標(biāo)區(qū)域范圍[M×L],傳感器節(jié)點(diǎn)數(shù)量[n],節(jié)點(diǎn)感知半徑[Rp];ASSDBO算法參數(shù):蜣螂種群規(guī)模[N],維度[d],最大迭代次數(shù)[Tmax]。
步驟2:改進(jìn)Tent混沌映射初始化種群,生成蜣螂初始位置信息[(xi,yi)],開始迭代,[t=1]。
步驟3:根據(jù)式(4)計(jì)算每組方案的覆蓋率,確定當(dāng)前全局最優(yōu)適應(yīng)度值fit。
步驟4:引入自適應(yīng)螺旋搜索滾球行為,根據(jù)式(13)~式(15)更新滾球蜣螂位置。
步驟5:根據(jù)式(16)和式(17)計(jì)算出動(dòng)態(tài)正弦邊界收斂因子,代入式(8)和式(10)更新繁育蜣螂和覓食蜣螂位置。
步驟6:引入白鯨算法引導(dǎo)的蜣螂動(dòng)態(tài)偷竊策略,按照式(18)~式(20)來更新竊賊蜣螂位置。
步驟7:重新計(jì)算種群適應(yīng)度值[fitnew],若[fitlt;fitnew],則輸出全局最優(yōu)解和最優(yōu)位置,更新迭代次數(shù)[t=t+1]。
步驟8:判斷迭代終止條件[t≤Tmax],若滿足,則返回步驟3,否則進(jìn)行下一步。
步驟9:輸出傳感器節(jié)點(diǎn)覆蓋最優(yōu)方案以及最優(yōu)適應(yīng)度值。
5 "實(shí)驗(yàn)仿真與結(jié)果分析
5.1 "ASSDBO算法性能測(cè)試
為了測(cè)試ASSDBO算法的收斂速度和求解精度,本文選取了4個(gè)基準(zhǔn)測(cè)試函數(shù)來測(cè)試本文算法的性能。表1為4個(gè)測(cè)試函數(shù)的參數(shù)和說明。
為了防止實(shí)驗(yàn)的偶然性,本次實(shí)驗(yàn)都采用相同條件下運(yùn)行30次取平均值,維度為30,迭代次數(shù)為500次。選取文獻(xiàn)[10?12]的改進(jìn)麻雀搜索算法(ISSA?ICR)、改進(jìn)粒子群算法(IPSO)、改進(jìn)灰狼算法(IGWO)作為對(duì)比算法來驗(yàn)證本文算法的性能。
本次測(cè)試函數(shù)選擇了兩個(gè)單峰測(cè)試函數(shù)[F1]、[F2]以及兩個(gè)多峰測(cè)試函數(shù)[F3]、[F4]來測(cè)試本文改進(jìn)算法的收斂速度和求解精度,選取平均值和標(biāo)準(zhǔn)差作為衡量標(biāo)準(zhǔn)。實(shí)驗(yàn)結(jié)果如表2和圖4所示。
從表2和圖4可知,在單峰測(cè)試函數(shù)[F1]、[F2]上,ASSDBO算法的平均值和標(biāo)準(zhǔn)差都是0,而對(duì)比算法沒有達(dá)到0,這說明ASSDBO算法的求解精度和收斂速度都要優(yōu)于對(duì)比算法。在多峰測(cè)試函數(shù)[F3]上,ASSDBO算法沒有達(dá)到最優(yōu)值,但是求解精度要高于對(duì)比算法;在[F4]上,ASSDBO算法和ISSA?ICR算法都達(dá)到了最優(yōu)值,但是ASSDBO算法的收斂速度快于ISSA?ICR,遠(yuǎn)快于其他對(duì)比算法。
5.2 "WSN覆蓋優(yōu)化實(shí)驗(yàn)
為了驗(yàn)證ASSDBO算法在WSN覆蓋優(yōu)化問題上的優(yōu)化效果,選擇DBO算法[13]、ISSA?ICR算法、IPSO算法、IGWO算法作為對(duì)比算法,比較不同算法之間的WSN覆蓋率。種群數(shù)為30、迭代次數(shù)為500,各算法獨(dú)立運(yùn)行30次取平均值。
5.2.1 "實(shí)驗(yàn)場(chǎng)景1
目標(biāo)區(qū)域?yàn)?0 m×20 m,部署24個(gè)傳感器節(jié)點(diǎn),感知半徑為2.5 m,通信半徑為5 m,實(shí)驗(yàn)結(jié)果如表3、圖5、圖6所示。
在相同條件下ASSDBO算法相比ISSA?ICR、IGWO、IPSO、DBO算法覆蓋率分別提升了2.1%、3.7%、5.1%和8.9%,并且ASSDBO算法只需要22個(gè)節(jié)點(diǎn)就能達(dá)到93.6%的覆蓋率,相比于ISSA?ICR算法減少了2個(gè)節(jié)點(diǎn),節(jié)約了部署成本。
由圖6可知,ASSDBO算法在98代左右收斂,而ISSA?ICR算法、IGWO算法、IPSO算法、DBO算法分別在275、250、289、300代左右收斂,且ASSDBO算法在相同迭代次數(shù)下的覆蓋率最高,這說明改進(jìn)策略有效提高了ASSDBO算法的尋優(yōu)能力和收斂速度。
5.2.2 "實(shí)驗(yàn)場(chǎng)景2
目標(biāo)區(qū)域?yàn)?00 m×100 m,部署40個(gè)傳感器節(jié)點(diǎn),感知半徑為10 m,通信半徑為20 m,實(shí)驗(yàn)結(jié)果如表4、圖7、圖8所示。圖7a)~圖7e)分別為DBO、IPSO、IGWO、ISSA?ICR和ASSDBO算法優(yōu)化得到的最終部署情況。
由表4可知:DBO、IPSO、IGWO和ISSA?ICR的覆蓋率分別為90.6%、91.4%、92.5%和94.2%,而ASSDBO覆蓋率達(dá)到98.9%,相比于ISSA?ICR、IGWO、IPSO、DBO算法,覆蓋率分別提升了4.7%、6.4%、7.5%、8.3%。ASSDBO算法基本沒有空洞區(qū)域和節(jié)點(diǎn)冗余的情況,節(jié)點(diǎn)利用率很高,并且從圖7f)可知,ASSDBO算法只需要35個(gè)節(jié)點(diǎn)就能達(dá)到94.21%的覆蓋率,相比于ISSA?ICR算法減少了5個(gè)節(jié)點(diǎn),節(jié)約了部署成本,提高了節(jié)點(diǎn)利用率。
圖8為覆蓋率的迭代曲線,ASSDBO在50次迭代時(shí)覆蓋率就達(dá)到了96%,在150次迭代時(shí)趨于收斂,覆蓋率穩(wěn)定在98.5%左右。而其他算法的收斂速度都要在300次迭代左右才能收斂,并且求解精度不高,這說明了本文所提算法的收斂速度和求解精度都要優(yōu)于對(duì)比算法,驗(yàn)證了本文所提算法在WSN覆蓋優(yōu)化問題上的有效性。
為了驗(yàn)證節(jié)點(diǎn)數(shù)量對(duì)覆蓋率的影響,只修改節(jié)點(diǎn)數(shù)量,其余的條件如實(shí)驗(yàn)場(chǎng)景2所示。實(shí)驗(yàn)結(jié)果如圖9所示,隨著節(jié)點(diǎn)數(shù)增加覆蓋率也在上升,在最少的節(jié)點(diǎn)下達(dá)到最高的覆蓋率,增加節(jié)點(diǎn)利用率是無線傳感器網(wǎng)絡(luò)設(shè)計(jì)中的重要目標(biāo)。隨著節(jié)點(diǎn)個(gè)數(shù)的增加,ASSDBO算法的覆蓋率增長(zhǎng)最快,在45個(gè)節(jié)點(diǎn)時(shí)就接近100%覆蓋,而對(duì)比算法在50個(gè)節(jié)點(diǎn)時(shí)達(dá)到96%左右的覆蓋率。這驗(yàn)證了本文所提算法具有較好的求解精度和收斂速度,可以以較少的節(jié)點(diǎn)達(dá)到較高的覆蓋率,節(jié)點(diǎn)利用率很高且節(jié)約了節(jié)點(diǎn)部署成本。
6 "結(jié) "語
針對(duì)WSN隨機(jī)部署導(dǎo)致覆蓋率低的問題,本文提出一種動(dòng)態(tài)自適應(yīng)蜣螂算法的WSN覆蓋優(yōu)化算法,在原始蜣螂算法的基礎(chǔ)上,使用改進(jìn)Tent混沌映射初始化種群,增強(qiáng)種群多樣性和全局搜索能力;引入自適應(yīng)螺旋搜索策略改進(jìn)蜣螂算法滾球行為,增強(qiáng)算法的全局搜索能力和收斂速度;在蜣螂覓食和繁殖行為中引入動(dòng)態(tài)正弦邊界收斂因子,平衡全局搜索和局部搜索;在竊賊蜣螂行為中引入白鯨算法引導(dǎo)的蜣螂動(dòng)態(tài)偷竊策略,增強(qiáng)算法前期的種群多樣性和全局搜索能力,在后期專注于局部搜索同時(shí)兼?zhèn)涮鼍植孔顑?yōu)的能力。通過四種測(cè)試函數(shù)測(cè)試,ASSDBO算法的尋優(yōu)速度和求解精度都要優(yōu)于對(duì)比算法。將ASSDBO算法應(yīng)用到WSN覆蓋問題上,以覆蓋率為優(yōu)化目標(biāo),實(shí)驗(yàn)結(jié)果表明,本文改進(jìn)算法有較快的收斂速度和求解精度,有效地提高了節(jié)點(diǎn)覆蓋率。如何在有障礙物的情況下研究WSN覆蓋優(yōu)化問題將是下一步的研究目標(biāo)。
注:本文通訊作者為劉登志。
參考文獻(xiàn)
[1] ZENG C J, QIN T, TAN W, et al. Coverage optimization of heterogeneous wireless sensor network based on improved wild horse optimizer [J]. Biomimetics, 2023, 8(1): 70.
[2] WANG J, JU C, GAO Y, et al. A PSO based energy efficient coverage control algorithm for wireless sensor networks [J]. Computers, materials amp; continua, 2018, 56(3): 433?446.
[3] ZHU F, WANG W H. A coverage optimization method for WSNs based on the improved weed algorithm [J]. Sensors, 2021, 21(17): 5869.
[4] 洪麗啦,莫愿斌,鮑冬雪.立方混沌非線性哈里斯鷹優(yōu)化算法在無線傳感器節(jié)點(diǎn)部署分析研究[J].現(xiàn)代電子技術(shù),2023,46(6):161?168.
[5] 李思成,魏云冰,邱永露.自主多決策粒子群的無線傳感器網(wǎng)絡(luò)覆蓋優(yōu)化[J].儀表技術(shù)與傳感器,2022(9):26?35.
[6] 宋婷婷,張達(dá)敏,王依柔,等.基于改進(jìn)鯨魚優(yōu)化算法的WSN覆蓋優(yōu)化[J].傳感技術(shù)學(xué)報(bào),2020,33(3):415?422.
[7] 曾蝶,陳立萬,趙尚飛,等.多策略灰狼算法在WSN上的覆蓋優(yōu)化研究[J].電子測(cè)量技術(shù),2023,46(7):45?52.
[8] ZHU F, LI G, TANG H, et al. Dung beetle optimization algorithm based on quantum computing and multi?strategy fusion for solving engineering problems [J]. Expert systems with applications, 2024, 236: 121219.
[9] ZHONG C, LI G, MENG Z. Beluga whale optimization: A novel nature?inspired metaheuristic algorithm [J]. Knowledge?based systems, 2022, 251: 109215.
[10] 武娟,李洪兵,羅磊,等.WSN中基于改進(jìn)麻雀搜索算法的多目標(biāo)覆蓋優(yōu)化[J].電子測(cè)量技術(shù),2022,45(15):48?56.
[11] 羅鑫.基于改進(jìn)粒子群算法的紅外WSN覆蓋研究[J].激光與紅外,2023,53(2):289?295.
[12] 范星澤,禹梅.改進(jìn)灰狼算法的無線傳感器網(wǎng)絡(luò)覆蓋優(yōu)化[J].計(jì)算機(jī)科學(xué),2022,49(z1):628?631.
[13] XUE J K, SHEN B. Dung beetle optimizer: A new meta?heuristic algorithm for global optimization [J]. The journal of supercomputing, 2022, 79(7): 1?32.
作者簡(jiǎn)介:張 "勇(1976—),男,山東曲阜人,副教授,碩士生導(dǎo)師,研究方向?yàn)檗r(nóng)業(yè)物聯(lián)網(wǎng)、信息安全等。
李 "建(1999—),男,江蘇連云港人,碩士研究生,研究方向?yàn)闊o線傳感器網(wǎng)絡(luò)、信息安全等。
劉登志(1990—),男,江蘇連云港人,博士研究生,副教授,碩士生導(dǎo)師,研究方向?yàn)槊艽a學(xué)、信息安全等。