本發(fā)明涉及無(wú)線傳感器網(wǎng)絡(luò)領(lǐng)域,具體涉及一種基于動(dòng)態(tài)數(shù)據(jù)圖樣的生命期最優(yōu)化樹的構(gòu)造方法。
背景技術(shù):
無(wú)線傳感器網(wǎng)絡(luò)由密集部署的無(wú)線傳感器節(jié)點(diǎn)構(gòu)成。這種網(wǎng)絡(luò)通常被安置在自然區(qū)域中,通過(guò)節(jié)點(diǎn)之間的互相協(xié)作,對(duì)目標(biāo)環(huán)境中物理量的變化進(jìn)行監(jiān)測(cè)。這種網(wǎng)絡(luò)通常由一個(gè)基站和眾多的傳感器節(jié)點(diǎn)構(gòu)成,如圖1所示。傳感器節(jié)點(diǎn)由電池供電,基站由電源供電,傳感器節(jié)點(diǎn)和基站通過(guò)無(wú)線通信的方式,自組織為一個(gè)網(wǎng)絡(luò)。
傳感器網(wǎng)絡(luò)的數(shù)據(jù)收集面臨著節(jié)點(diǎn)能量過(guò)早耗盡的挑戰(zhàn)。在所有的能量消耗中,無(wú)線通信占據(jù)著最大的比重。為了省電,應(yīng)該避免過(guò)多的進(jìn)行數(shù)據(jù)傳輸。而究竟傳送哪些數(shù)據(jù),由數(shù)據(jù)本身所決定,并且只有在監(jiān)測(cè)數(shù)據(jù)被傳感器節(jié)點(diǎn)采集到之后才能被決定。所以,在每個(gè)采樣周期中,報(bào)送數(shù)據(jù)的節(jié)點(diǎn)在動(dòng)態(tài)的變化且不可預(yù)測(cè)。比如,在相鄰采樣周期內(nèi),每個(gè)傳感器節(jié)點(diǎn)所采集到的數(shù)據(jù),往往較為平穩(wěn)或只在一定的范圍內(nèi)波動(dòng)。為了節(jié)省電量,只有當(dāng)新的采樣數(shù)值與上次報(bào)送的數(shù)據(jù)之間的偏差大到一定程度時(shí),節(jié)點(diǎn)才需要向基站發(fā)送本次采集到的數(shù)據(jù)。在節(jié)點(diǎn)對(duì)環(huán)境采樣之前,每個(gè)傳感器節(jié)點(diǎn)并不能提前計(jì)算其兩次報(bào)送數(shù)據(jù)的偏差是多少。又如,在由條件觸發(fā)的傳感器監(jiān)測(cè)應(yīng)用中,比如在火山監(jiān)控中,只有當(dāng)震動(dòng)和聲波信號(hào)產(chǎn)生突變時(shí),才需要傳送數(shù)據(jù)。但是,在節(jié)點(diǎn)采樣到數(shù)據(jù)之前,它并不知道自己未來(lái)的數(shù)據(jù)是否會(huì)滿足先前設(shè)定好的條件。以上兩個(gè)應(yīng)用場(chǎng)景具有相同的特點(diǎn):在每個(gè)采樣周期,報(bào)送數(shù)據(jù)給基站的傳感器節(jié)點(diǎn)隨著時(shí)間不斷動(dòng)態(tài)的變化,且這種變化具有不可預(yù)測(cè)性。將網(wǎng)絡(luò)中報(bào)送數(shù)據(jù)給基站的傳感器節(jié)點(diǎn)的分布,定義為數(shù)據(jù)圖樣。
在數(shù)據(jù)圖樣動(dòng)態(tài)變化的情況下,降低數(shù)據(jù)收集所帶來(lái)的能量耗費(fèi)至關(guān)重要。無(wú)線傳感器節(jié)點(diǎn)通常由電池驅(qū)動(dòng),最大程度的節(jié)約電量來(lái)延長(zhǎng)網(wǎng)絡(luò)的生命期(網(wǎng)絡(luò)中第一個(gè)節(jié)點(diǎn)耗干能量的時(shí)間)是非常重要的。而動(dòng)態(tài)數(shù)據(jù)圖樣給節(jié)能帶來(lái)了挑戰(zhàn)。
另一方面,數(shù)據(jù)收集過(guò)程中,節(jié)點(diǎn)的能量使用效率又被路由結(jié)構(gòu)所影響。不同的路由結(jié)構(gòu),將影響到每個(gè)節(jié)點(diǎn)接收到的和需要發(fā)送的數(shù)據(jù)包的個(gè)數(shù),從而影響到節(jié)點(diǎn)的能量利用。所有現(xiàn)有的路由協(xié)議方面的工作,都是針對(duì)完整的數(shù)據(jù)圖樣進(jìn)行處理。完整的數(shù)據(jù)圖樣指:網(wǎng)絡(luò)中所有節(jié)點(diǎn)在每個(gè)采樣周期內(nèi),都產(chǎn)生一個(gè)數(shù)據(jù)包,去發(fā)送給匯聚節(jié)點(diǎn)。對(duì)于處理周期性的,伴隨動(dòng)態(tài)數(shù)據(jù)圖樣的數(shù)據(jù)收集,這些路由協(xié)議是低效的。這是因?yàn)?,網(wǎng)絡(luò)中不同的數(shù)據(jù)圖樣,會(huì)導(dǎo)致每個(gè)節(jié)點(diǎn)在數(shù)據(jù)包的接收,發(fā)送,以及空閑偵聽方面,花費(fèi)不同百分比的能量。所以,不同的數(shù)據(jù)圖樣需要與不同的路由結(jié)構(gòu)匹配起來(lái),去延長(zhǎng)網(wǎng)絡(luò)的生命期。比如,當(dāng)網(wǎng)絡(luò)中發(fā)送數(shù)據(jù)的節(jié)點(diǎn)比較多時(shí),接收和傳送數(shù)據(jù)包通常在傳感器節(jié)點(diǎn)的能量消耗中占據(jù)相當(dāng)大的比重。在這種情況下,平衡每個(gè)節(jié)點(diǎn)的數(shù)據(jù)量非常重要。另一方面,當(dāng)網(wǎng)絡(luò)中發(fā)送數(shù)據(jù)的節(jié)點(diǎn)比較少時(shí),傳感器節(jié)點(diǎn)的能量耗費(fèi)通常被空閑偵聽所主導(dǎo)。此時(shí),匯聚節(jié)點(diǎn)周圍的傳感器節(jié)點(diǎn)就不再是能量消耗的瓶頸。使每個(gè)節(jié)點(diǎn)花費(fèi)在空閑偵聽方面的能量盡可能的少,就變成了在設(shè)計(jì)路由結(jié)構(gòu)方面,一個(gè)相當(dāng)重要的考慮因素。所以,為了應(yīng)對(duì)動(dòng)態(tài)數(shù)據(jù)圖樣,設(shè)計(jì)能夠平衡不同節(jié)點(diǎn)能量花費(fèi)的路由結(jié)構(gòu),來(lái)延長(zhǎng)網(wǎng)絡(luò)的生命期是非常重要的。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的就是提供一種基于動(dòng)態(tài)數(shù)據(jù)圖樣的生命期最優(yōu)化樹的構(gòu)造方法,其可應(yīng)用于構(gòu)造高效的樹型結(jié)構(gòu),用于最優(yōu)化網(wǎng)絡(luò)的生命期。
為實(shí)現(xiàn)上述目的,本發(fā)明采用了以下技術(shù)方案:
一種基于動(dòng)態(tài)數(shù)據(jù)圖樣的生命期最優(yōu)化樹的構(gòu)造方法,其特征在于:包括如下操作步驟:
s1:采用tpo調(diào)度機(jī)制來(lái)量化能量耗費(fèi);
s2:計(jì)算節(jié)點(diǎn)v在一個(gè)采樣周期中用于接收、發(fā)送、和空閑偵聽的能量耗費(fèi)模型;
s3:采用上述能量耗費(fèi)模型構(gòu)造生命期最優(yōu)的路由樹。
具體的方案為:
步驟s2包括如下操作:
s11:計(jì)算節(jié)點(diǎn)v一個(gè)采樣周期中產(chǎn)生數(shù)據(jù)包的數(shù)學(xué)期望和發(fā)送數(shù)據(jù)包所能量耗費(fèi);
s12:計(jì)算以節(jié)點(diǎn)v的孩子節(jié)點(diǎn)為根的子樹中產(chǎn)生的所有數(shù)據(jù)包和節(jié)點(diǎn)v用于接收這些數(shù)據(jù)包的能量耗費(fèi);
s13:計(jì)算每個(gè)采樣周期內(nèi),節(jié)點(diǎn)v用在空閑偵聽上的總能量耗費(fèi)。
步驟s3中采用貪心的策略構(gòu)件生命期最優(yōu)的路由樹。
上述技術(shù)方案中,針對(duì)樹形結(jié)構(gòu)設(shè)計(jì)了一個(gè)數(shù)學(xué)模型,用于精確描述傳感器節(jié)點(diǎn)的能量耗費(fèi),并將設(shè)計(jì)出的數(shù)學(xué)模型應(yīng)用于構(gòu)造高效的樹型結(jié)構(gòu),來(lái)最優(yōu)化網(wǎng)絡(luò)的生命期。
附圖說(shuō)明
圖1是典型的無(wú)線傳感器網(wǎng)絡(luò)結(jié)構(gòu)圖;
圖2a是采用本發(fā)明構(gòu)造的一顆樹的網(wǎng)絡(luò)拓?fù)鋱D;
圖2b是采用本發(fā)明構(gòu)造的一顆樹的數(shù)據(jù)包產(chǎn)生概率圖;
圖2c是采用本發(fā)明構(gòu)造的一顆樹的生命期最優(yōu)樹;
圖3為歸一化的100個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)鋱D;
圖4a是某傳感器前5000個(gè)溫度和太陽(yáng)能輻射的數(shù)據(jù)圖;
圖4b是每個(gè)采樣周期發(fā)送溫度數(shù)據(jù)的傳感器節(jié)點(diǎn)的百分比隨著不同的數(shù)據(jù)模糊閾值的變化圖
圖4c是每個(gè)采樣周期發(fā)送太陽(yáng)能輻射數(shù)據(jù)的傳感器節(jié)點(diǎn)的百分比隨著不同的數(shù)據(jù)模糊閾值的變化圖。
具體實(shí)施方式
為了使本發(fā)明的目的及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合實(shí)施例對(duì)本發(fā)明進(jìn)行具體說(shuō)明。應(yīng)當(dāng)理解,以下文字僅僅用以描述本發(fā)明的一種或幾種具體的實(shí)施方式,并不對(duì)本發(fā)明具體請(qǐng)求的保護(hù)范圍進(jìn)行嚴(yán)格限定。
本發(fā)明采取的技術(shù)方案,包括如下步驟:
s1:首先,引入tpo調(diào)度機(jī)制來(lái)量化能量耗費(fèi)。tpo(trafficpatternoblivious)調(diào)度算法被用于構(gòu)造傳輸時(shí)間表,節(jié)點(diǎn)根據(jù)這個(gè)傳輸時(shí)間表無(wú)碰撞的收發(fā)數(shù)據(jù)。tpo是一種時(shí)分多址(tdma)算法,它已經(jīng)被證明了是能量高效的。tpo調(diào)度機(jī)制的引入,使得量化節(jié)點(diǎn)的能量耗費(fèi)成為可能。
為了量化每個(gè)節(jié)點(diǎn)v在tpo調(diào)度表中的能量開銷,我們假設(shè)每個(gè)采樣周期內(nèi),節(jié)點(diǎn)v數(shù)據(jù)產(chǎn)生概率為pi(i向基站發(fā)送數(shù)據(jù)的概率)。網(wǎng)絡(luò)中節(jié)點(diǎn)v發(fā)送一個(gè)數(shù)據(jù)包所用的能量為et,偵聽一次信道所用的能量為er。在不同采樣周期,不同的節(jié)點(diǎn)上數(shù)據(jù)包的產(chǎn)生符合獨(dú)立同分布。
s2:計(jì)算節(jié)點(diǎn)v在其一個(gè)采樣周期中用于接收、發(fā)送、和空閑偵聽的能量。
s21:計(jì)算節(jié)點(diǎn)v在其一個(gè)采樣周期(tv)中產(chǎn)生的數(shù)據(jù)包的數(shù)學(xué)期望和發(fā)送數(shù)據(jù)包的能量耗費(fèi);
s22:計(jì)算以節(jié)點(diǎn)v的孩子節(jié)點(diǎn)為根的子樹中產(chǎn)生的所有數(shù)據(jù)包,和節(jié)點(diǎn)v用于接收這些數(shù)據(jù)包的能量耗費(fèi);
s23:在tpo調(diào)度法中,節(jié)點(diǎn)v不需要對(duì)孩子節(jié)點(diǎn)k進(jìn)行空閑偵聽,當(dāng)且僅當(dāng)孩子節(jié)點(diǎn)k在其每個(gè)時(shí)間片中都發(fā)送數(shù)據(jù)。計(jì)算每個(gè)采樣周期內(nèi),節(jié)點(diǎn)v用在空閑偵聽上的總能量。
節(jié)點(diǎn)v在一個(gè)采樣周期內(nèi)總的能量消耗由以上三部分的疊加。
s3:將如上設(shè)計(jì)出的能量耗費(fèi)模型用于構(gòu)造生命期最優(yōu)的路由樹。采用一種貪心的策略,將網(wǎng)絡(luò)中的節(jié)點(diǎn)一個(gè)一個(gè)加入待構(gòu)造的路由樹t中。開始時(shí),t僅僅包括匯聚節(jié)點(diǎn)s,在每一步的迭代中,構(gòu)造集合e,集合e包括所有的和樹t相鄰的節(jié)點(diǎn)(至少和樹t中的一個(gè)節(jié)點(diǎn)是鄰居節(jié)點(diǎn))。每次迭代時(shí),只有集合e中的節(jié)點(diǎn),才被考慮加入到當(dāng)前的樹t中。對(duì)于每一個(gè)節(jié)點(diǎn)v∈e,本方法檢查當(dāng)前t中所有節(jié)點(diǎn)v的鄰居節(jié)點(diǎn),選擇合適的鄰居節(jié)點(diǎn)和節(jié)點(diǎn)v連接。若節(jié)點(diǎn)v和t中的鄰居節(jié)點(diǎn)u相連,只有在從節(jié)點(diǎn)u至匯聚節(jié)點(diǎn)s路徑上的節(jié)點(diǎn)的能量消耗速率會(huì)產(chǎn)生變化。所以,這些節(jié)點(diǎn)重新計(jì)算自己的能量消耗速率,并且記錄此路徑上最短的生命期。對(duì)于所有的節(jié)點(diǎn)v∈e和可能的節(jié)點(diǎn)v的父節(jié)點(diǎn)u,本方法將能夠使得當(dāng)前t的生命期最大化的鏈接(u,v)加入到t中,直至t涵蓋網(wǎng)絡(luò)中所有的節(jié)點(diǎn),如圖2a、2b、2c所示。
以下通過(guò)一個(gè)具體的實(shí)施例來(lái)對(duì)本發(fā)明進(jìn)行具體說(shuō)明:
第一步,布置網(wǎng)絡(luò);
參照?qǐng)D3,將100個(gè)傳感器節(jié)點(diǎn)隨機(jī)的放在一個(gè)的正方形區(qū)域中,為了讓整個(gè)網(wǎng)絡(luò)保持連通,在拓?fù)鋱D中將每個(gè)節(jié)點(diǎn)的傳輸半徑設(shè)置為0.25。
第二步,選取數(shù)據(jù)序列,設(shè)置閾值;
參照?qǐng)D4a,采用華盛頓大學(xué)開源lem項(xiàng)目所收集到的溫度和太陽(yáng)能輻射的傳感器數(shù)據(jù)序列進(jìn)行測(cè)試。每個(gè)數(shù)據(jù)序列含有超過(guò)3000000個(gè)傳感器數(shù)據(jù),其中連續(xù)兩個(gè)傳感器數(shù)據(jù)采樣時(shí)間間隔1秒。為了將基站采收集到的數(shù)據(jù),與真實(shí)的傳感器數(shù)據(jù)之間的偏差控制在e(可看作誤差范圍)之內(nèi),每個(gè)節(jié)點(diǎn)以上一次上報(bào)的數(shù)據(jù)為中心,設(shè)置一個(gè)閾值[u-e,u+e]。在每個(gè)采樣周期,只有當(dāng)每個(gè)節(jié)點(diǎn)收集到的數(shù)據(jù),超出了此節(jié)點(diǎn)所設(shè)定的閾值的范圍,節(jié)點(diǎn)才需要向基站傳送數(shù)據(jù),并且更新閾值的范圍。否則,節(jié)點(diǎn)不需要報(bào)送任何內(nèi)容。參照?qǐng)D4b和圖4c,當(dāng)e的值變大時(shí),閾值范圍相應(yīng)的變大,每個(gè)節(jié)點(diǎn)上報(bào)的數(shù)據(jù)量隨之降低了。
第三步,設(shè)置節(jié)點(diǎn)能量;
設(shè)置基站的能量供應(yīng)為無(wú)窮,而傳感器節(jié)點(diǎn)的能量是有限的,并且傳感器發(fā)送一個(gè)數(shù)據(jù)包消耗1個(gè)單位的能量,而監(jiān)聽一次信道將花費(fèi)0.75單位的能量。節(jié)點(diǎn)的初始能量相同,設(shè)置為50,000個(gè)能量單位。網(wǎng)絡(luò)的生命期被定義為從剛開始到網(wǎng)絡(luò)中第一個(gè)節(jié)點(diǎn)能量耗盡的時(shí)間。
第四步,估算每個(gè)節(jié)點(diǎn)的數(shù)據(jù)報(bào)送概率;
分別對(duì)溫度和太陽(yáng)輻射兩種數(shù)據(jù)序列,設(shè)置不同的e值,在一段時(shí)間內(nèi)觀察每個(gè)節(jié)點(diǎn)的數(shù)據(jù)報(bào)送情況,并將數(shù)據(jù)報(bào)送次數(shù)對(duì)時(shí)間段進(jìn)行歸一化,作為與誤差范圍e相應(yīng)的報(bào)送概率。
第五步,構(gòu)造生命期最優(yōu)樹;
用貪心的策略,通過(guò)迭代,將節(jié)點(diǎn)一個(gè)一個(gè)加入待構(gòu)造的路由樹t中。
本發(fā)明未能詳盡描述的設(shè)備、機(jī)構(gòu)、組件和操作方法,本領(lǐng)域普通技術(shù)人員均可選用本領(lǐng)域常用的具有相同功能的設(shè)備、機(jī)構(gòu)、組件和操作方法進(jìn)行使用和實(shí)施?;蛘咭罁?jù)生活常識(shí)選用的相同設(shè)備、機(jī)構(gòu)、組件和操作方法進(jìn)行使用和實(shí)施。
以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在獲知本發(fā)明中記載內(nèi)容后,在不脫離本發(fā)明原理的前提下,還可以對(duì)其作出若干同等變換和替代,這些同等變換和替代也應(yīng)視為屬于本發(fā)明的保護(hù)范圍。