黃紅波 王勇智



摘要:無線傳感器網絡技術的出現使得農業更加精準化、智能化,其在農業上的應用環境如果園與水果大棚等往往具有面積大、作物多等特點,需要更多的傳感器節點以用于監測。由于傳感器節點往往使用電池進行供電,有限的能量也給網絡的魯棒性帶來了更大的挑戰。基于離散粒子群算法設計了一種無線傳感器網絡的拓撲優化算法,在保證網絡覆蓋的情況下,通過盡可能減少活動節點的數量來降低網絡的能量損耗,延長網絡的生命周期,從而提高無線傳感器網絡的魯棒性。
關鍵詞:無線傳感器網絡;離散粒子群優化算法;網絡拓撲
Abstract:The emergence of wireless sensor network technology makes agriculture more precise and intelligent. Its application environment in agriculture, such as gardens and fruit greenhouses, often has the characteristics of a large area and many crops, and more sensor nodes are needed for monitoring. Since batteries often power sensor nodes, limited energy brings more significant challenges to the network's robustness. This paper sets up a topology optimization algorithm for wireless sensor networks based on the discrete particle swarm algorithm. Under the condition of ensuring network coverage, the energy loss of the network is reduced by reducing the number of active nodes as much as possible, and the life cycle of the network is prolonged, thereby improving the robustness of the wireless sensor network.
Key words:wireless sensor network; discrete particle swarm optimization algorithm; network topology
1 引言
無線傳感器網絡的迅速發展,推動了農業的精準化、智能化發展。為最大化無線傳感器網絡的生命周期,保障農業環境監測的穩定性,研究降低網絡能耗的方法至關重要[1,2]。粒子群算法(Particle Swarm Optimization, PSO)[3]模仿鳥群、魚群等群體智能,將連續空間的優化求解問題轉化為粒子朝著全局最優解不斷移動的過程,其搜索速度快、效率高、算法簡單,但對于離散的優化問題處理不佳[4]。為了解決在進行農業大棚環境監測過程中,無線傳感器網絡存在的各節點剩余能量及負載不均的問題,我們設計了一種基于離散粒子群算法的網絡拓撲優化算法(DiscreteParticle Swarm OptimizationforTopologyControl, DPSOTC),算法采用一個激活函數將連續空間內的粒子位置轉化為離散空間內的位置,通過將節點的鄰居節點數以及剩余能量等建立適應度函數,來優化無線傳感器網絡的拓撲,能有效求出滿足網絡覆蓋條件下所需的最少活動節點數,從而能提高無線傳感器網絡的生命周期,增強網絡的魯棒性。
2粒子群優化算法簡述
在粒子群算法中,每個粒子在初始化時將被分配一個隨機的位置與速度,每個粒子的位置代表著一個可行解。對于種群規模為[Np],維度為[D]的種群,一個粒子[i∈[1,Np]]在第[t+1]次迭代時,[d∈[1,D]]維的解空間位置
3基于離散粒子群算法的無線傳感器網絡拓撲優化算法
粒子群算法的優化求解問題是一個連續空間問題,而無線傳感器網絡中節點的活動與否是一個離散空間問題。為將粒子群算法應用到精準農業的無線傳感器網絡拓撲優化問題中,我們設計了一種基于離散粒子群算法的無線傳感器網絡拓撲優化算法DPSOTC。
算法首先采用一個激活函數將連續空間內的粒子位置[Xi,dt]轉化為離散空間內的位置[Bi,dt],激活函數定義如下:
通過該函數,粒子當前在連續空間內的位置[Xi,dt]將被轉化為[ (0,1)]上的輸出,并且其值越接近于1代表粒子在連續空間內的位置越大,其值越接近于0則連續空間內的位置越小。通過設置一個閾值,可以將激活函數的輸出劃分為0和1兩類,即離散空間內的位置[Bi,dt]。
其中,閾值[rand]為[0,1]范圍內的一個滿足均勻分布的隨機數。[Bi,dt]表示第t次迭代后,粒子群中第[i]個粒子的位置所代表的無線傳感器網絡中第[d]個節點的狀態。為0表示該節點處于休眠狀態,為1則表示該節點處于活動狀態。通過統計粒子在所有維度的位置,即可得到無線傳感器網絡中所有節點的狀態,即網絡拓撲。
針對農業無線傳感器網絡監測面積大、節點多、地勢復雜、作物多樣化以及要求低能耗等特點,結合相應農業監測系統的設計原理和需求分析,我們提出的算法PSOTC在搜索過程中更傾向于尋找節點鄰居數大、剩余能量多且活動節點少的解。為了解決這個問題,我們將公式(3)、(4)中的適應度函數進行了針對的改進,提出了一個基于節點[d]的鄰居數[Nd]、剩余能量[Ed]以及其在離散空間的位置[Bi,d]的適應度函數,以此評估算法在每次迭代過程中所有粒子構成的網絡拓撲的優劣,其值越小代表著得到的網絡拓撲越優秀。即