紀 妙,宋 煜,曾 強,張思明
(湖北中煙工業有限責任公司武漢卷煙廠,湖北武漢 430048)
目前針對工業無線通信網絡等問題的研究大多集中于網絡的布設、監控、覆蓋與連接關系方面。現階段,出現了一種“感知覆蓋”概念,即“通信覆蓋”,以此為基礎實現多個節點之間的信息互聯。許多通信網絡都是針對野外、叢林等特定場所,這些場所中的節點分布密集,容易導致網絡節點信號經常發生碰撞,使得網絡通信能力與通信安全性大幅度下降。因此,對通信網絡節點進行合理、高效的布置與調度是非常必要的。文獻[1]提出了基于動態簇的節點調度算法,采用粒子濾波器對下一時間的目標進行定位,通過預測節點位置和協方差估計得到下一時間目標橢圓形面積。結合節點剩余能量繼續追蹤目標,從而調度覆蓋節點。然而該方法在目標跟蹤過程中容易出現跟蹤誤差,影響調度質量。文獻[2]提出了基于網絡連通覆蓋的調度算法,采用SOBOL 序列和逆向學習方法對群體進行了逆向學習,以改進珊瑚礁算法為基礎,得到了符合連通覆蓋要求的節點集合,實現節點優化調度。然而,該方法在學習過程中耗費大量時間,影響節點調度效果。為此,提出了工業無線通信網絡多重覆蓋節點調度數學建模方法。
采用網格目標覆蓋形式反映多重覆蓋節點調度部署問題[3],如圖1 所示。

圖1 三維網格覆蓋結構示意圖
在圖1 所示的三維網格覆蓋結構[4-6]中,任意一覆蓋節點a與網格節點b之間的距離計算公式為:
式中,(x1,y1,z1)為覆蓋節點a在三維網格中的坐標;(x2,y2,z2)為網格節點b在三維網格中的坐標[7]。計算網格節點b對覆蓋節點a的感知強度,計算公式為:
式中,R表示感知范圍。通過計算網格節點對覆蓋節點的感知強度,確定每一個覆蓋區域范圍內的節點位置[8]。
在實際應用中,由于受到外界環境因素的干擾,通信網絡的節點監控常常會出現一些不確定衰變情況[9]。而布爾感知模型可以更好地描述這種衰變,可表示為:
式中,ε表示通信網絡節點感知能力隨著通信距離增加而衰減的參數;e 表示自然常數[10]。在監控對象屬性不一的情況下,將多個通信網絡節點部署在含有N個網格的區域,在該區域設置更多的節點,以增加網絡的容錯性和監測質量,減少其他區域所部署的節點數量,從而實現區域目標的多重覆蓋[11]。
采用差分算法對節點進行休眠或正常狀態判斷,從而確定多重覆蓋節點狀態。差分算法是一種以群體演化為基礎,以記憶個體最優解和簇內信息分享為核心的算法,主要是利用簇群中成員之間的協作和競爭來解決相關的問題[12]。
為了提高全局搜索收斂性和穩定性[13],采用混合二進制編碼,粒子編碼示意圖如圖2 所示。

圖2 混合二進制粒子編碼示意圖
結合圖2,構建判斷多重覆蓋節點狀態的方程,如下所示:
在式(4)支持下,差分算法通過以下公式判斷節點狀態:
式中,μ表示時間片數量;Q表示節點能量值;qWm表示節點在Wm位置處的能量[14]。通過上述內容,可確定多重覆蓋節點狀態。
根據節點狀態判斷節點是否為冗余節點,并在作出決策之前設置一種退避機制,避免因兩個節點的休眠而引起感知空洞問題,能夠對于覆蓋冗余度判斷產生有利影響[15]。利用相鄰點的數目或者相鄰點之間的間距來確定相鄰節點覆蓋區域。針對“非均勻休眠”問題,采用容忍覆蓋區域分析方法對節點進行覆蓋冗余判別,判別公式為:
式中,Sm表示節點被鄰居節點覆蓋的面積;Fm(C)表示節點部署區域容忍覆蓋面積,其計算公式可表示為:
式中,R、r分別表示節點隨機部署區域半徑和感知半徑;C(h)表示感知區域覆蓋面積。當計算結果滿足式(6)時,此時的節點為多重覆蓋節點。
假定在工業無線通信網絡中,由多個節點構成一個無向圖G=V,E,在該無向圖中,V為非空集,E為無序二元集。結合覆蓋冗余度判別結果,構建基于螞蟻算法的工業無線通信網絡節點集,并對節點集中的節點進行調度,使得節點重復覆蓋區域達到最低。
初始化蟻群算法,增強初始解的信息素,提高了蟻群算法的收斂速度,確保蟻群算法在搜索過程中最快速地逼近最佳解[16];
通過隨機地阻止多個螞蟻穿越通信網絡節點,對第一個被選中節點調度概率進行計算,計算公式為:
式中,t表示時間;xi,j(t) 表示螞蟻的信息素;yi,j(t)表示螞蟻的啟發信息;ωx、ωy分別表示信息素和啟發信息權值;i表示粒子數量;j表示向量維度;k表示螞蟻數量。當螞蟻在工業無線通信網絡中選定一個節點進行調度時,與其所對應螞蟻的信息素濃度就會發生變化,由此構建的多重復覆蓋節點調度模型為:
在實驗過程中,設置圖3 所示的工業無線通信網絡結構。
采用無線組網方式,如WSN/WiFi,以增加網絡的靈活性。同時,該網絡還要求具有很強的通信能力,并配有以太網接口,根據監控對象的不同采取不同的組網模式。
將網絡覆蓋率作為實驗指標,其計算公式為:
式中,SA表示處于活動狀態節點形成的覆蓋區域;S′表示研究區域面積。該計算結果越大,網絡覆蓋率越大,說明該節點調度效果越差;反之,計算結果越小,網絡覆蓋率越小,說明節點調度效果越好。
分別使用基于動態簇的節點調度算法、基于網絡連通覆蓋調度算法和多重覆蓋節點調度數學建模方法,對比分析不同初始重覆蓋率下的節點調度效果,如圖4 所示。

圖4 不同方法節點調度效果對比分析
在初始重復覆蓋率為100%的情況下,使用基于動態簇的節點調度算法和基于網絡連通覆蓋調度算法始終保持重復覆蓋,使得最終網絡覆蓋率分別達到48%和23%。使用多重覆蓋節點調度數學建模方法能夠有效擺脫重復覆蓋,使得最終網絡重復覆蓋率達到0。
在初始重復覆蓋率為95%的情況下,使用基于動態簇的節點調度算法始終保持重復覆蓋,使得最終網絡重復覆蓋率達到18%。使用基于網絡連通覆蓋調度算法、多重覆蓋節點調度數學建模方法能夠有效擺脫重復覆蓋,其中使用數學建模方法在通信時間為600 s 時就達到了相關目標。
在初始重復覆蓋率為90%的情況下,使用基于動態簇的節點調度算法無法有效擺脫重復覆蓋,使得最終網絡覆蓋率達到9%。使用基于網絡連通覆蓋調度算法、多重覆蓋節點調度數學建模方法能夠有效擺脫重復覆蓋,兩種方法在通信時間分別為700、500 s 時就達到調度目標。
在初始重復覆蓋率為85%的情況下,使用這三種方法均能有效擺脫重復覆蓋,基于動態簇的節點調度算法、基于網絡連通覆蓋調度算法和多重覆蓋節點調度數學建模方法在通信時間分別為800、550、300 s 時就達到調度目標。
文中針對工業無線通信網絡多重覆蓋節點調度問題,提出了一種多重覆蓋節點調度數學建模方法,以此在降低節點重復覆蓋度的同時,提升節點利用率。實驗結果表明,該模型可以有效地解決工業無線通信網絡中多個覆蓋節點的快速調度問題,應用效果好。