吳 玨
江蘇常熟職業(yè)教育中心校電氣信息工程系,江蘇常熟 215500
無線傳感器網(wǎng)絡(luò)中的大量監(jiān)測數(shù)據(jù)需經(jīng)過合理處理,才可滿足不同用戶的查詢需求。但該網(wǎng)絡(luò)數(shù)據(jù)的高效查詢受到網(wǎng)絡(luò)自身的限制,其中節(jié)點(diǎn)能量是制約其發(fā)展的核心因素。為有效降低網(wǎng)絡(luò)節(jié)點(diǎn)的能耗,本文研究了兩種算法。
傳感器網(wǎng)絡(luò)對(duì)環(huán)境的感應(yīng),很多時(shí)候要求得到查詢時(shí)間范圍內(nèi)感應(yīng)對(duì)象的屬性變化趨勢。若傳感器節(jié)點(diǎn)上有大量重復(fù)數(shù)據(jù)查詢并向基站發(fā)送時(shí),可通過擬訂新的查詢表,將這些查詢合并,使大量重復(fù)數(shù)據(jù)一次性發(fā)送,減少了節(jié)點(diǎn)能量的消耗。該算法充分利用基站強(qiáng)大的計(jì)算能力、足夠的存儲(chǔ)及充足的能量等特點(diǎn),以求減少節(jié)點(diǎn)的通信能量消耗,延長傳感器網(wǎng)絡(luò)的壽命,如流程圖1所示。該算法只考慮了時(shí)間范圍條件下單用戶查詢的優(yōu)化,同時(shí)在能量消耗上只考慮了發(fā)送能量的消耗。
圖1 基于時(shí)間范圍查詢的優(yōu)化算法流程圖
文獻(xiàn)[3]給出了一種基于where條件的多查詢合并算法,實(shí)際上查詢中節(jié)點(diǎn)上固有屬性也可以進(jìn)行合并。另外文獻(xiàn)[3]中給出的查詢滿足概率是基于屬性能夠選擇的最大范圍,而實(shí)際上,幾乎沒有節(jié)點(diǎn)在實(shí)際工作時(shí)能夠取得感應(yīng)的最大范圍。針對(duì)這兩點(diǎn),本文研究了以下算法。本算法是利用基站存儲(chǔ)的節(jié)點(diǎn)歷史信息,以最小化查詢消耗能量為目標(biāo),提出一種基于預(yù)測查詢滿足概率的多查詢合并算法,以達(dá)到能量消耗最小的目的。
以下給出多查詢能量消耗模型。假設(shè)節(jié)點(diǎn)發(fā)送一個(gè)數(shù)據(jù)包消耗能量為E,接收一個(gè)數(shù)據(jù)包消耗能量為E。一個(gè)節(jié)點(diǎn)是否發(fā)送數(shù)據(jù)包,與節(jié)點(diǎn)采集的數(shù)據(jù)是否滿足查詢的概率P有關(guān)。每次采樣相互獨(dú)立,因此n次采樣滿足查詢條件的次數(shù)為n×p,每個(gè)數(shù)據(jù)包需要d次轉(zhuǎn)發(fā)到基站,一個(gè)時(shí)間間隔為t的查詢單位時(shí)間內(nèi)單個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)消耗的能量為,接收數(shù)據(jù)消耗的能量為(此處不考慮最后基站接收數(shù)據(jù)消耗的能量)。則整個(gè)網(wǎng)絡(luò)的所有節(jié)點(diǎn)消耗的能量為,其中,Esi為第i個(gè)節(jié)點(diǎn)發(fā)送一個(gè)數(shù)據(jù)包消耗的能量,Eri為第i個(gè)節(jié)點(diǎn)接收一個(gè)數(shù)據(jù)包消耗的能量,Pi為第i個(gè)節(jié)點(diǎn)滿足查詢條件的概率,為無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)數(shù),di為節(jié)點(diǎn)深度(對(duì)應(yīng)發(fā)送次數(shù)),t為采樣周期。
在實(shí)際的無線傳感器網(wǎng)絡(luò)中,不是每個(gè)節(jié)點(diǎn)都能感應(yīng)到屬性值A(chǔ)的最大范圍。本文利用基站的計(jì)算和存儲(chǔ)能力,將節(jié)點(diǎn)歷史感應(yīng)并發(fā)送到基站的數(shù)據(jù)匯總起來得到每個(gè)節(jié)點(diǎn)感應(yīng)到的最大值A(chǔ)max和最小值A(chǔ)min。由于最大值A(chǔ)max和最小值A(chǔ)min是已知能夠觀測到的屬性范圍,而未來觀測到的屬性范圍,而未來觀測到的屬性范圍可能在最大值A(chǔ)max和最小值A(chǔ)min之間,也可能在其范圍之外,此處用參數(shù)ΔA來修正觀測到的最大值A(chǔ)max和最小值A(chǔ)min。則節(jié)點(diǎn)取值范圍為[Amin-ΔA,Amax+ΔA]。
節(jié)點(diǎn)i的滿足查詢條件概率為:
其中,y為查詢上限,x為查詢下限,pi為在以[x,y]為查詢條件下節(jié)點(diǎn)i查詢滿足概率,Aimax為節(jié)點(diǎn)i歷史查詢出現(xiàn)的屬性A的最大值,Aimin為節(jié)點(diǎn)i歷史查詢出現(xiàn)的屬性A的最小值,ΔiA為節(jié)點(diǎn)i屬性A歷史最大值最小值變化修正值,ΔiA可以用屬性A歷史出現(xiàn)的數(shù)據(jù)標(biāo)準(zhǔn)差得到。
若Enew>E1+E2兩查詢不進(jìn)行合并,反之進(jìn)行合并。
若n個(gè)查詢需判斷是否進(jìn)行合并,需輪流判斷可以合并的查詢,最后將合并后的查詢列表發(fā)送到傳感器網(wǎng)絡(luò)再查詢。
表1 合并規(guī)則表
3 范圍查詢 無 范圍并集 6簡單查詢?nèi)コ逃袑傩?無
該多查詢合并算法與文獻(xiàn)[3]提出的算法相比更好地利用了基站能量充足、計(jì)算能力強(qiáng)的特點(diǎn),隨著查詢時(shí)間的持續(xù),能夠大量減少查詢數(shù)量,降低無線傳感器網(wǎng)絡(luò)查詢傳輸?shù)臄?shù)據(jù)量,減少網(wǎng)絡(luò)節(jié)點(diǎn)的能量消耗,從而大大增加無線傳感器網(wǎng)絡(luò)的壽命。由于存在查詢合并,本算法的時(shí)效性有所欠缺,更加適合對(duì)實(shí)效要求不是太高的環(huán)境。
[1]孫利民等.無線傳感器網(wǎng)絡(luò)[M].清華大學(xué)出版社,2005.
[2]南國芳,路曉穎.傳感器網(wǎng)絡(luò)多查詢架構(gòu)體系及融合算法[J].計(jì)算機(jī)工程,2010,36(1):21-24.
[3]Xiang S,Lim H B,Tan K L,Zhou Y.Two-tier multiple query optimization for sensor networks.Proceedings of the 27th International Conference on Distributed Computing Systems,2007,Toronto,Canada.