吳傳程,趙春江,吳華瑞,繆祎晟
(1. 吉林農(nóng)業(yè)大學信息技術(shù)學院,長春市,130118; 2. 國家農(nóng)業(yè)信息化工程技術(shù)研究中心,北京市,100097; 3. 北京農(nóng)業(yè)信息技術(shù)研究中心,北京市,100097)
通訊作者:趙春江,男,1964年生,河北保定人,博士,研究員;研究方向為農(nóng)業(yè)智能化技術(shù)裝備。E-mail: zhaocj@nercita.org.cn
利用農(nóng)業(yè)無線傳感器網(wǎng)絡(luò)精確獲取連棟溫室內(nèi)作物生長(例如黃瓜等)的小氣候環(huán)境信息[1-2](例如土壤溫濕度,空氣溫濕度等)是現(xiàn)代農(nóng)業(yè)發(fā)展的重要技術(shù)手段[3]。精準的數(shù)據(jù)采集與分析可有效減少人工和水肥資源的過度消耗[4-9],實現(xiàn)作物的高效生長。如何利用更少的傳感器節(jié)點實現(xiàn)對連棟溫室內(nèi)黃瓜等作物的最大化感知覆蓋,降低網(wǎng)絡(luò)成本、提高溫室環(huán)境感知準確性是農(nóng)業(yè)無線傳感器網(wǎng)絡(luò)研究應(yīng)用中亟待解決的問題。
不同領(lǐng)域監(jiān)測應(yīng)用的覆蓋要求各異[10-11],對于無線傳感器的優(yōu)化部署主要分為群體智能算法和分布式部署算法兩大類。群體智能算法中,Zhou[12]等采用SSO算法解決對監(jiān)測區(qū)域的優(yōu)化覆蓋,通過模擬群居蜘蛛中不同個體的生活習性對傳感器節(jié)點進行調(diào)度,提高對監(jiān)測區(qū)域的網(wǎng)絡(luò)感知覆蓋,但算法的收斂性低;Panag等[13]提出一種最大覆蓋混合搜索算法,該方法基于粒子群算法實現(xiàn)全局搜索并結(jié)合Hooke-Jeeves方法改進局部搜索,提高算法的收斂速度,優(yōu)化感知節(jié)點的區(qū)域覆蓋;Holland等[14]利用遺傳算法實現(xiàn)對監(jiān)測區(qū)域的網(wǎng)絡(luò)覆蓋,該算法采用局部搜索策略對傳感器進行部署,提高了監(jiān)測區(qū)域的覆蓋率,但由于沒有考慮傳感器位置對覆蓋效率的影響,所以存在大量的重疊覆蓋面積;Su等[15]采用基于動態(tài)蟻群算法的無線傳感器網(wǎng)絡(luò)節(jié)點優(yōu)化配置策略,對獲取蟻群算法中的全局最優(yōu)解方式進行改進,實現(xiàn)無線傳感器網(wǎng)絡(luò)的優(yōu)化覆蓋部署,具有較好的網(wǎng)絡(luò)連通性和覆蓋率,但蟻群算法的計算量較大,求解的所需時間較長;基于群體智能的相關(guān)算法也逐漸應(yīng)用在農(nóng)田[16-17]和茶田[18]中,并通過水肥一體化解決水肥資源的浪費。分布式部署算法中,Zou等[19]首次將虛擬力算法應(yīng)用到無線傳感網(wǎng)絡(luò)的優(yōu)化覆蓋中,在圓形感知范圍和虛擬勢場的基礎(chǔ)上,提出了一種經(jīng)典的虛擬力算法。但傳統(tǒng)虛擬力算法在運行后期穩(wěn)定性較差,出現(xiàn)覆蓋率較低的情況[20-21]。目前基于改進虛擬力提高感知覆蓋率的研究仍然存在[22]。Liu等[23]提出傳感器節(jié)點部署和覆蓋虛擬分子方法(VMFA),假設(shè)在傳感器節(jié)點之間存在類似于空氣分子的相互作用力,設(shè)置相鄰或次相鄰“零重力”,通過計算傳感器節(jié)點之間的合力,實現(xiàn)對監(jiān)測區(qū)域的優(yōu)化覆蓋;關(guān)志艷等[24]提出虛擬力結(jié)合群聚智能優(yōu)化思想,改善傳感器節(jié)點的移動速度,解決網(wǎng)絡(luò)感知覆蓋優(yōu)化問題;戴歡等[25]采用虛擬力結(jié)合泰森多邊形的分布式覆蓋算法,解決虛擬力后期覆蓋率下降的問題;李飆等[26-28]利用Delaunay三角剖分對不同區(qū)域土壤的墑情和變異系數(shù),實現(xiàn)農(nóng)田的全方位的監(jiān)測。
針對傳統(tǒng)虛擬力算法在連棟溫室內(nèi)對黃瓜等作物實現(xiàn)無線傳感器網(wǎng)絡(luò)感知覆蓋局部最優(yōu)狀態(tài)導(dǎo)致作物生長不均勻等問題,提出基于區(qū)域面積強度的虛擬力感知覆蓋算法,實現(xiàn)在連棟溫室中對黃瓜等作物生長環(huán)境監(jiān)測的全覆蓋,提高無線傳感器網(wǎng)絡(luò)對溫室的智能化監(jiān)測水平。
為了提高連棟溫室中無線傳感器網(wǎng)絡(luò)感知覆蓋的穩(wěn)定性和感知覆蓋高效性,改進傳統(tǒng)虛擬力算法。結(jié)合傳感器節(jié)點間在連棟溫室內(nèi)的覆蓋強度,克服傳統(tǒng)虛擬力的限制,增強算法的穩(wěn)定性,實現(xiàn)無線傳感器網(wǎng)絡(luò)在連棟溫室內(nèi)對黃瓜等作物的高覆蓋率。
根據(jù)黃瓜等作物在連棟溫室內(nèi)不同生長周期種植特點,實現(xiàn)無線傳感器網(wǎng)絡(luò)對黃瓜等作物生長環(huán)境的全向感知覆蓋監(jiān)測,獲得更多黃瓜作物生長環(huán)境信息,讓連棟溫室內(nèi)的黃瓜等作物得到更好地培育,因此在連棟溫室中構(gòu)建無線傳感器網(wǎng)絡(luò)感知模型。
將N個傳感器節(jié)點隨機分布在連棟溫室內(nèi),并將該溫室分割成K個面積大小為1 m2的網(wǎng)格,并將黃瓜等作物均勻地種植在K個[10]網(wǎng)格內(nèi),作物在溫室內(nèi)的坐標分布如式(1)所示。
C=[c1(x1,y1),c2(x2,y2),c3(x3,y3),…,cK(xK,yK)]
(1)
式中:C——網(wǎng)格點即種植作物組成的集合;
cK(xK,yK)——第K個作物種植坐標。
對連棟溫室內(nèi)的傳感器節(jié)點做如下假設(shè):采用同構(gòu)傳感器節(jié)點、位置信息可知、可調(diào)控自身感知位置信息、r為傳感器節(jié)點的感知半徑、通信半徑R為感知半徑的2倍[21];已知傳感器節(jié)點s(xs,ys)與任意作物c(xc,yc)的歐式距離d(c,s),若d(c,s)≤R,則作物c被傳感器s覆蓋,若d(c,s)>R,則作物c未被傳感器節(jié)點s覆蓋。
傳統(tǒng)虛擬力算法是利用節(jié)點間的歐式距離dij與距離閾值進行判斷,并利用傳感器節(jié)點間的歐氏距離和設(shè)定的虛擬力系數(shù)計算出傳感器節(jié)點所受的虛擬力。
將傳感器節(jié)點隨機分布在連棟溫室內(nèi)[29],采用傳統(tǒng)虛擬力對連棟溫室實現(xiàn)感知覆蓋過程中,傳感器節(jié)點在溫室內(nèi)受虛擬力的移動,由于部分傳感器節(jié)點受到相鄰節(jié)點的虛擬合力為零,導(dǎo)致這些節(jié)點無法在溫室內(nèi)進行移動,出現(xiàn)一種收攏平衡狀態(tài),如圖1所示。使無線傳感器感知覆蓋網(wǎng)絡(luò)陷入局部最優(yōu),在連棟溫室內(nèi)產(chǎn)生大量的覆蓋重疊,同時對未覆蓋區(qū)域未進行進一步覆蓋,導(dǎo)致傳感器節(jié)點未能獲取連棟溫室內(nèi)不同位置作物的精確信息,同時產(chǎn)生了大量的重復(fù)的冗余數(shù)據(jù)。
圖1 傳統(tǒng)虛擬力算法產(chǎn)生的聚攏情況Fig. 1 Clustering generated by the traditional virtual force algorithm
通過研究表明,傳統(tǒng)虛擬力覆蓋算法的覆蓋結(jié)果對傳感器節(jié)點的初始狀態(tài)有較高的依賴性[30]。為使傳感器節(jié)點對連棟溫室內(nèi)黃瓜等作物實現(xiàn)覆蓋最大化,引入一定的虛擬力擾動避免陷入局部最優(yōu),調(diào)整虛擬力的計算方式,從原理上避免局部平衡的出現(xiàn)。由此本文提出一種基于區(qū)域面積強度的虛擬力算法,引入溫室內(nèi)相鄰節(jié)點間的感知重疊覆蓋強度,調(diào)節(jié)相鄰傳感器節(jié)點間的虛擬力系數(shù),消除連棟溫室內(nèi)相鄰傳感器節(jié)點間出現(xiàn)的收攏平衡狀態(tài),從而避免因依賴感知節(jié)點的初始分布,導(dǎo)致無線傳感器網(wǎng)絡(luò)在連棟溫室內(nèi)對黃瓜等作物產(chǎn)生覆蓋聚攏以及低覆蓋率現(xiàn)象。
假設(shè)N個傳感器節(jié)點隨機部署在連棟溫室內(nèi)部,相鄰節(jié)點間的最優(yōu)歐氏距離為dth,傳感器節(jié)點最優(yōu)部署與相鄰傳感器節(jié)點在監(jiān)測區(qū)域的面積強度有關(guān)。
(2)
式中:ηi——相鄰傳感器節(jié)點的區(qū)域的強度;
t——傳感器節(jié)點si的第t個鄰居節(jié)點;
P——傳感器節(jié)點si的鄰居節(jié)點的總數(shù);
Sit——相鄰傳感器節(jié)點的重疊覆蓋面積。
在連棟溫室內(nèi)傳感器節(jié)點的相鄰節(jié)點數(shù)目越多,產(chǎn)生的重疊覆蓋面積越大,導(dǎo)致該區(qū)域作物受到傳感器節(jié)點的感知覆蓋面積強度越高。在連棟溫室內(nèi)不同的兩個相鄰傳感器節(jié)點之間產(chǎn)生的距離各不相同,如果不能預(yù)先確定溫室內(nèi)的傳感器節(jié)點的隨機部署狀態(tài),僅根據(jù)經(jīng)驗值設(shè)置重力參數(shù),使得傳感器節(jié)點在受到虛擬力之后在連棟溫室內(nèi)產(chǎn)生過大的移動,無法取得良好的覆蓋效果,同時消耗過多的能量。
為降低算法在迭代過程中產(chǎn)生誤差同時提高無線傳感器網(wǎng)絡(luò)對連棟溫室內(nèi)黃瓜等作物的感知覆蓋率,通過傳感器節(jié)點之間的區(qū)域覆蓋強度和虛擬力系數(shù)計算出虛擬力,利用區(qū)域面積強度調(diào)節(jié)傳感器節(jié)點所受虛擬力大小。dij與閾值距離dth比較,判斷傳感器節(jié)點是否受到虛擬力的影響,改變傳感器分布情況,在連棟溫室內(nèi)有目的地擴張,提高連棟溫室內(nèi)對作物的有效覆蓋率。
假設(shè)每個傳感器之間的力為Fij(ij=1,2,3,…,n), 當傳感器之間的距離小于距離閾值,斥力FijN(ij=1,2,3,…,n)生成;否則引力FijP(ij=1,2,3,…,n)生成。
(3)
式中:αij——定向角度;
θij——定向角度,αij=θij+π;
wa——斥力系數(shù);
wr——引力系數(shù);
ηij——區(qū)域覆蓋強度。
(4)
式中:FiBD——來自監(jiān)測物體的引力和邊界對傳感器的斥力的總和;
Fij——傳感器之間存在的引力或斥力;
Fi——合力。
(5)
式中: MaxStep——傳感器節(jié)點最大移動距離;
Fix——傳感器節(jié)點微粒si在x軸上的虛擬力分量;
Fiy——傳感器節(jié)點微粒si在y軸上的虛擬力分量。
通過上述,利用傳感器節(jié)點之間區(qū)域覆蓋強度重新獲取傳感器節(jié)點之間所受虛擬力大小,消除由于傳統(tǒng)虛擬力方法依賴初始分布使相鄰傳感器節(jié)點產(chǎn)生的收攏平衡,利用AIVF算法實現(xiàn)對連棟溫室內(nèi)作物的網(wǎng)絡(luò)優(yōu)化覆蓋。
為了驗證本文算法在提高覆蓋質(zhì)量方面的有效性,選取傳統(tǒng)虛擬力算法[31](VFA)和粒子群優(yōu)化算法[32](PSO)進行對比分析和討論。仿真參數(shù)設(shè)置如表1所示。
表1 仿真參數(shù)Tab. 1 Simulation parameters
AIVF算法與VFA和PSO算法進行比較分析,圖2顯示了三種網(wǎng)絡(luò)覆蓋算法的覆蓋情況,起始覆蓋率為78.92%。PSO算法通過對每個傳感器節(jié)點進行計算獲取最優(yōu)位置,實現(xiàn)對傳感節(jié)點的最優(yōu)部署,且最終覆蓋率為86.59%,覆蓋率增加量僅為8.37%;VFA算法是通過對傳感器與節(jié)點間的距離進行計算,獲取傳感器所受的虛擬力值,以此對無線傳感網(wǎng)絡(luò)進行有效覆蓋,隨著迭代次數(shù)的增加其最終覆蓋率為95.68%,覆蓋率增加量為16.76%;雖然VFA算法覆蓋率增長量高于PSO算法的,但是兩種算法都沒有達到最優(yōu)覆蓋;AIVF算法利用區(qū)域面積強度結(jié)合重力系數(shù)改進傳感器節(jié)點所受虛擬力,在迭代第16次時其覆蓋率達到99.9%。AIVF算法在無線傳感網(wǎng)絡(luò)中得到的覆蓋率分別比VFA、PSO算法高了4.32%、13.31%。同時AIVF算法在運行時的覆蓋率提升速度也優(yōu)于其他算法,AIVF算法在經(jīng)過16次迭代時,AIVF算法的覆蓋率達到99.9%,而VFA算法在迭代50次時覆蓋率達到最大值。在VFA算法迭代效果達到最佳后,在第850次迭代之后其覆蓋率凸顯了該算法后期不穩(wěn)定。
為檢驗AIVF算法在不同傳感器個數(shù)情況下對連棟溫室的感知覆蓋優(yōu)于其他兩種算法,確定感知半徑為15 m,改變傳感器節(jié)點的部署數(shù)量進行試驗,試驗結(jié)果如圖3所示,隨著傳感器個數(shù)的不斷提升,三種算法對無線傳感器網(wǎng)絡(luò)的感知覆蓋率也不斷提升。在傳感器個數(shù)低于20時,隨著傳感器個數(shù)的不斷增加,三種算法的覆蓋率增加量在10%~20%;當傳感器個數(shù)高于20個時,VFA算法和PSO算法在無線傳感網(wǎng)絡(luò)中的覆蓋率增加量趨于平緩,而AIVF算法隨著傳感器個數(shù)的增加,其覆蓋率增加量仍然提升,由此可以看出AIVF算法的覆蓋率提升性能優(yōu)于其他兩種方法。
圖2 覆蓋率變化過程對比Fig. 2 Comparison of coverage change process
圖3 覆蓋率受傳感器個數(shù)的影響Fig. 3 Coverage is affected by the number of sensors
為了進一步驗證AIVF算法在無線傳感器網(wǎng)絡(luò)中的感知覆蓋性能,對傳感器節(jié)點的感知半徑進行調(diào)整。試驗結(jié)果如圖4所示,分別是三種算法在不同感知半徑的情況下對監(jiān)測區(qū)域產(chǎn)生感知覆蓋率變化情況,感知半徑r=3、6、9、12、15 m。從圖中可以看出,三種算法的覆蓋率都得到了提高,VFA和PSO兩種算法都隨著感知半徑的增加,覆蓋率的增加量很高,但覆蓋率依然很低,而AIVF算法產(chǎn)生覆蓋率高于其他兩種算法,表明AIVF算法的性能明顯優(yōu)于其他兩種算法。當感知半徑小于9 m時,AIVF算法和VFA算法的覆蓋率增長速度基本相同且覆蓋率增加了63%,而PSO算法僅提高了38%;在感知半徑為9~12 m時,VFA算法覆蓋率增加量逐漸降低,雖然PSO算法產(chǎn)生的覆蓋率增加量沒有變,但依然低于AIVF算法產(chǎn)生的覆蓋率增加量,且覆蓋率低于AIVF算法和VFA算法。當感知半徑大于12時,VFA算法和PSO算法的覆蓋率增加趨于平緩,而AIVF算法的覆蓋率仍然得到很大的提升。圖5是節(jié)點數(shù)目與節(jié)點移動距離平均值的關(guān)系,可以看出AIVF的移動平均距離最小,保證了傳感器節(jié)點的能量消耗低于其他兩種算法所需要;隨著節(jié)點數(shù)量的增加,覆蓋率增高的同時移動距離平均值差異較小。
圖4 覆蓋率受感知半徑的影響Fig. 4 Coverage affected by perceived radius
圖5 不同節(jié)點數(shù)目下的節(jié)點移動距離的平均值Fig. 5 Average moving distance of nodes under different number of nodes
綜合以上可以看出,隨著感知半徑不斷增加,AIVF算法的覆蓋效果明顯優(yōu)于其他兩種算法,同時隨著傳感器個數(shù)的增加VFA和PSO算法作用下的感知覆蓋率增長速度逐漸下降,而AIVF算法作用下的增長量仍然很高。同時,基于區(qū)域面積強度算法對連棟溫室實現(xiàn)無線傳感器網(wǎng)絡(luò)感知覆蓋,避免了相鄰傳感器節(jié)點產(chǎn)生的收攏現(xiàn)象,如圖6所示。
圖6 基于區(qū)域面積強度的傳感器網(wǎng)絡(luò)感知覆蓋Fig. 6 Sensor network sensing coverage based on regional area intensity
針對大型連棟溫室的無線傳感器網(wǎng)絡(luò)感知覆蓋方法,采用改進傳統(tǒng)虛擬力對連棟溫室中黃瓜等作物實現(xiàn)無線傳感網(wǎng)絡(luò)有效監(jiān)測覆蓋。通過連棟溫室內(nèi)不同位置的傳感器節(jié)點產(chǎn)生的重疊覆蓋強度不同,調(diào)節(jié)傳感器節(jié)點所受虛擬力大小,減少重疊覆蓋區(qū)域,實現(xiàn)對連棟溫室內(nèi)黃瓜等作物的優(yōu)化覆蓋。
1) 提高對連棟溫室內(nèi)作物感知覆蓋率:本文算法與VFA和PSO兩種算法在同等條件下對連棟溫室內(nèi)黃瓜等作物實現(xiàn)網(wǎng)絡(luò)感知覆蓋,通過三種算法地對比,AIVF算法對連棟溫室內(nèi)作物的感知覆蓋率分別提高了4.32%和13.31%,傳感器節(jié)點能夠更加精準地采集溫室內(nèi)不同位置作物的環(huán)境信息
2) 提高無線傳感器網(wǎng)絡(luò)在連棟溫室內(nèi)感知性能:在連棟溫室內(nèi)調(diào)節(jié)感知半徑時,AIVF算法對溫室內(nèi)作物的感知覆蓋率增加了63%,PSO算法僅提升38%;同時,VFA算法的感知覆蓋率增加量低于AIVF算法的。隨著傳感器個數(shù)的不斷變化,當傳感器個數(shù)大于20個時,VFA和PSO兩種算法的感知覆蓋率增加量為0.1%~0.3%,而AIVF算法的感知覆蓋率增加量為2.8%~3.3%。
3) 在連棟溫室內(nèi)部署的傳感器節(jié)點參數(shù)發(fā)生變化時,傳感器節(jié)點在AIVF算法中產(chǎn)生的平均移動距離在12~13 m而VFA和PSO兩種算法產(chǎn)生的平均移動距離在23~46 m、17~22 m,降低了傳感器節(jié)點在溫室內(nèi)移動過程中的能量消耗,且長時間在連棟溫室內(nèi)進行數(shù)據(jù)采集。