本發(fā)明屬于無線傳感器網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體涉及一種無線傳感器網(wǎng)絡(luò)的性能與功耗調(diào)整方法。
背景技術(shù):
在無線傳感器網(wǎng)絡(luò)中,由于傳感器節(jié)點(diǎn)通常使用電池供電,且電量十分有限,因此,延長節(jié)點(diǎn)和整個(gè)傳感網(wǎng)的工作壽命是網(wǎng)絡(luò)部署者關(guān)注的重要目標(biāo)。圍繞延長網(wǎng)絡(luò)壽命的技術(shù)方向從技術(shù)特點(diǎn)方面可分為三大類,分別是節(jié)能、外部能量收集、無線充電。
其中,節(jié)能方法是指通過減少傳感器節(jié)點(diǎn)單位時(shí)間或單位工作量的能耗來延長其生命期的方法。而在網(wǎng)絡(luò)節(jié)點(diǎn)、拓?fù)?、初始能量等諸多方面均相同的情況下,路由和流量分配對于網(wǎng)絡(luò)的性能和壽命影響巨大。所以,對路由和流量分配進(jìn)行優(yōu)化是很有效的調(diào)控?zé)o線傳感器網(wǎng)絡(luò)的性能和功耗的手段。
當(dāng)前無線傳感器網(wǎng)絡(luò)的基于網(wǎng)絡(luò)層的拓?fù)洳渴鸷土髁糠峙浞矫娴墓?jié)能研究根據(jù)技術(shù)特點(diǎn)區(qū)分,可分為能量空洞避免、節(jié)能路由、移動(dòng)Sink等幾大類。但三者都有較明顯的局限性。能量空洞避免類僅僅以能量均衡為目標(biāo),不能兼顧網(wǎng)絡(luò)傳輸性能,節(jié)點(diǎn)逐漸死亡過程中如何優(yōu)化全網(wǎng)壽命并未充分研究;節(jié)能路由及調(diào)度類,單純節(jié)能,無法兼顧性能,并且部分算法需要啟發(fā)式求解,近似比和復(fù)雜度較難取舍;移動(dòng)Sink類僅適用于具備Sink節(jié)點(diǎn)可移動(dòng)條件的場景,并且采集數(shù)據(jù)量突然增大時(shí)對移動(dòng)速度有更高要求。
但是,考慮到傳感器網(wǎng)絡(luò)某些應(yīng)用場景或遇到某些突發(fā)情況時(shí),如災(zāi)難救助、火山監(jiān)測、森林防火等,對于網(wǎng)絡(luò)性能尤其是網(wǎng)絡(luò)可靠性有較高要求,亟需傳感網(wǎng)具有一定彈性,可以以較低復(fù)雜度在低功耗低性能至高功耗高性能運(yùn)行狀態(tài)之間進(jìn)行選擇和變換的無線傳感器網(wǎng)絡(luò)性能與功耗調(diào)整方法。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于針對現(xiàn)有技術(shù)的缺陷,提供一種無線傳感器網(wǎng)絡(luò)的性能與功耗調(diào)整方法,以解決上述問題。
本發(fā)明的實(shí)施例提供了一種無線傳感器網(wǎng)絡(luò)的性能與功耗調(diào)整方法,包括:
節(jié)點(diǎn)坐標(biāo)初始化,節(jié)點(diǎn)根據(jù)約束條件生成潛在父子關(guān)系和其關(guān)系的鄰接矩陣,節(jié)點(diǎn)間發(fā)送消息建立網(wǎng)絡(luò);
設(shè)置合理調(diào)節(jié)因子,根據(jù)選用的無線協(xié)議和硬件設(shè)置鏈路容量上限,將流量需求、鄰接矩陣代入模型;
使用凸優(yōu)化方法循環(huán)求解直到得到函數(shù)最優(yōu)解;
得到各鏈路流量分配和目標(biāo)函數(shù)最優(yōu)值。
進(jìn)一步,該模型表示為:
s.t.
ds≥0,表達(dá)傳感網(wǎng)中任何非Sink節(jié)點(diǎn)s向其父節(jié)點(diǎn)傳遞的流量與節(jié)點(diǎn)s所有子節(jié)點(diǎn)發(fā)來的流量之差為s自身進(jìn)行數(shù)據(jù)采集產(chǎn)生的流量;
表示任何節(jié)點(diǎn)下面所帶的子節(jié)點(diǎn)無論多少級(jí),匯聚的流量不能超過鏈路容量閾值c;
xji≥0,表示相鄰節(jié)點(diǎn)間流量非負(fù);
表示節(jié)點(diǎn)至少有一個(gè)相鄰的節(jié)點(diǎn)作為自身的父節(jié)點(diǎn);
式中,k為節(jié)點(diǎn)總數(shù);xij表示從節(jié)點(diǎn)i到節(jié)點(diǎn)j的流量,其中i和j是任意兩個(gè)相鄰節(jié)點(diǎn);c為最大收發(fā)鏈路容量;e為周期性采集頻率,單位:字節(jié)/秒;ds為節(jié)點(diǎn)出流量;a,b為調(diào)節(jié)因子。
進(jìn)一步,對普通節(jié)點(diǎn)建立該模型時(shí),ds=e;對Sink建立該模型時(shí),Sink節(jié)點(diǎn)匯集全網(wǎng)流量,ds=-e×k。
與現(xiàn)有技術(shù)相比本發(fā)明的有益效果是:本發(fā)明的模型為凸優(yōu)化模型,是無線傳感器網(wǎng)絡(luò)的性能與功耗可調(diào)模型,該方法通過節(jié)點(diǎn)組網(wǎng)方式及流量分配進(jìn)行優(yōu)化,具有較低計(jì)算復(fù)雜度。
附圖說明
圖1是本發(fā)明一實(shí)施例的流程圖;
圖2是本發(fā)明一實(shí)施例鄰接矩陣adj的示意圖;
圖3是本發(fā)明一實(shí)施例節(jié)點(diǎn)關(guān)系和流量分配1(a=1,b=1)的示意圖;
圖4是本發(fā)明一實(shí)施例節(jié)點(diǎn)關(guān)系和流量分配2(a=0,b=1)的示意圖;
圖5是本發(fā)明一實(shí)施例節(jié)點(diǎn)關(guān)系和流量分配3(a=1,b=0)的示意圖。
具體實(shí)施方式
下面結(jié)合附圖所示的各實(shí)施方式對本發(fā)明進(jìn)行詳細(xì)說明,但應(yīng)當(dāng)說明的是,這些實(shí)施方式并非對本發(fā)明的限制,本領(lǐng)域普通技術(shù)人員根據(jù)這些實(shí)施方式所作的功能、方法、或者結(jié)構(gòu)上的等效變換或替代,均屬于本發(fā)明的保護(hù)范圍之內(nèi)。
本實(shí)施例提供了一種性能與功耗可調(diào)的無線傳感器網(wǎng)絡(luò)模型(方法),描述和使用該模型時(shí)需要用到的變量如下:
用G=(N,E)表示有向傳感網(wǎng)絡(luò),其中N是節(jié)點(diǎn)集,E是邊集,節(jié)點(diǎn)總數(shù)為k個(gè)。
xij表示從節(jié)點(diǎn)i到節(jié)點(diǎn)j的流量,其中i和j是任意兩個(gè)相鄰節(jié)點(diǎn)。
最大收發(fā)鏈路容量c,周期性采集頻率e(單位:字節(jié)/秒)。
ds為節(jié)點(diǎn)出流量。有向傳感網(wǎng)絡(luò)的節(jié)點(diǎn)分為sink節(jié)點(diǎn)和普通節(jié)點(diǎn),對普通節(jié)點(diǎn)建立該模型時(shí),ds=e;而sink節(jié)點(diǎn)匯集全網(wǎng)流量,ds=-e×k。
調(diào)節(jié)因子a,b,增大a,b會(huì)使得表達(dá)式項(xiàng)權(quán)重增大,從而使該項(xiàng)優(yōu)化效果更加顯著。
這個(gè)模型如下所示:
s.t.
ds≥0;(表達(dá)傳感網(wǎng)中任何非Sink節(jié)點(diǎn)s向其父節(jié)點(diǎn)傳遞的流量與節(jié)點(diǎn)s所有子節(jié)點(diǎn)發(fā)來的流量之差為s自身進(jìn)行數(shù)據(jù)采集產(chǎn)生的流量)。
(表示任何節(jié)點(diǎn)下面所帶的子節(jié)點(diǎn)無論多少級(jí),匯聚的流量不能超過鏈路容量閾值c)。
xji≥0;(表示相鄰節(jié)點(diǎn)間流量非負(fù))。
(表示節(jié)點(diǎn)至少有一個(gè)相鄰的節(jié)點(diǎn)作為自身的父節(jié)點(diǎn))。
該模型可基于RPL協(xié)議部署,也可以基于其他協(xié)議部署。
模型應(yīng)用步驟如下:
1.節(jié)點(diǎn)坐標(biāo)初始化,節(jié)點(diǎn)根據(jù)約束條件生成潛在父子關(guān)系和其關(guān)系的鄰接矩陣,節(jié)點(diǎn)間發(fā)送消息建立網(wǎng)絡(luò);
2.設(shè)置合理調(diào)節(jié)因子,根據(jù)選用的無線協(xié)議和硬件設(shè)置鏈路容量上限,將流量需求、鄰接矩陣代入模型;
3.使用凸優(yōu)化方法循環(huán)求解直到得到函數(shù)最優(yōu)解;
4.得到各鏈路流量分配和目標(biāo)函數(shù)最優(yōu)值。
參圖1至圖5所示,下面對無線傳感器網(wǎng)絡(luò)的性能與功耗可調(diào)模型的具體應(yīng)用舉例說明。其依據(jù)以下步驟實(shí)現(xiàn)(具體操作步驟參考圖1):
步驟1:模型應(yīng)用的初始化
步驟1.1:節(jié)點(diǎn)坐標(biāo)初始化
以8個(gè)節(jié)點(diǎn)為例應(yīng)用該模型求解流量分配。對節(jié)點(diǎn)坐標(biāo)就行初始化(以節(jié)點(diǎn)無高度差的簡單情況為例)。
假設(shè)各節(jié)點(diǎn)平面坐標(biāo)為v1(0,0),v2(-1,1),v3(1,1),v4(1,-1),v5(-2,2),v6(0,2),v7(2,0),v8(0,-2)。
按照模型約束條件建立節(jié)點(diǎn)間潛在父子關(guān)系(父節(jié)點(diǎn)距離Sink節(jié)點(diǎn)比子節(jié)點(diǎn)近且子節(jié)點(diǎn)最多只能與距自己最近的五個(gè)節(jié)點(diǎn)建立關(guān)系),得e1(1,2),e2(1,3),e3(1,4),e4(2,5),e5(2,6),e6(3,6),e7(3,7),e8(4,7),e9(4,8)。
將無連接的節(jié)點(diǎn)間和節(jié)點(diǎn)自身之間的置為零,有連接的節(jié)點(diǎn)間置1,得節(jié)點(diǎn)鄰接矩陣adj如圖2所示。
步驟1.2:節(jié)點(diǎn)組建網(wǎng)絡(luò)
(此處以根據(jù)RPL協(xié)議組網(wǎng)為例)從Sink節(jié)點(diǎn)起,依次向外發(fā)送DIO消息,傳遞有關(guān)的拓?fù)湫畔?。?dāng)鄰居節(jié)點(diǎn)收到DIO消息后,根據(jù)目標(biāo)函數(shù)、DAG特征、廣播路徑開銷等決定是否加入該網(wǎng)絡(luò)。若加入,則該節(jié)點(diǎn)收到的DIO消息來源為其父節(jié)點(diǎn),該節(jié)點(diǎn)計(jì)算自己的Rank值,并向父節(jié)點(diǎn)發(fā)送DAO消息表示確認(rèn),DAO消息包含其路由前綴。或者節(jié)點(diǎn)主動(dòng)發(fā)送DIS消息請求網(wǎng)絡(luò)拓?fù)湫畔?,其潛在父?jié)點(diǎn)發(fā)送DIO消息給該節(jié)點(diǎn),該節(jié)點(diǎn)可根據(jù)是否加入決定是否發(fā)送DAO消息給潛在父節(jié)點(diǎn)。最終生成一個(gè)DODAG。
步驟1.3:網(wǎng)絡(luò)保活
由于資源受限,在LLN中采用“keepalive”機(jī)制是不合理的。RPL中采用Trickle定時(shí)器管理,控制DIO消息的發(fā)送速率,當(dāng)網(wǎng)絡(luò)穩(wěn)定時(shí)消息數(shù)量減少,當(dāng)檢測到不一致消息時(shí),加快DIO消息的發(fā)送速率以解決問題。
步驟2:變量的輸入
步驟2.1:假設(shè)采用802.15.4協(xié)議,頻率為2.4GHz,其鏈路容量c=250kbps;
步驟2.2:輸入采集頻率e=10(kb/s),表達(dá)實(shí)際工作中傳感器的性能需求,ds=e(Sink除外);
步驟2.3:輸入綠色因子a=1,b=1,調(diào)節(jié)權(quán)重;
步驟2.4:代入矩陣adj。(見圖2)
步驟3:運(yùn)算過程
步驟3.1:令k=1,jk=2;
步驟3.2:代入以上變量,運(yùn)用凸優(yōu)化算法求解,若有最優(yōu)解記為并進(jìn)入3,若無最優(yōu)解則k=k+1重復(fù)2;
步驟3.3:求出集合A的元素,如A為空集,則即為原問題最優(yōu)解;否則,4;
步驟3.4:取t屬于A,再次求解。t得到目標(biāo)函數(shù)值若小于k,則k=t,回到2。否則繼續(xù)取p為集合A中的下一個(gè)元素,直到k的目標(biāo)函數(shù)值最小。得到和最優(yōu)流量分配xij;
步驟4:結(jié)果的輸出(節(jié)點(diǎn)關(guān)系和流量分配見圖3);
輸出目標(biāo)函數(shù)最優(yōu)值y和各節(jié)點(diǎn)流量值xij;
此時(shí),最優(yōu)值y=120.16。
改變調(diào)節(jié)因子,令a=0,b=1,其余條件不變,重新進(jìn)行上述計(jì)算過程,得結(jié)果:
此時(shí),最優(yōu)值y=120。
改變調(diào)節(jié)因子,令a=1,b=0,其余條件不變,重新進(jìn)行上述計(jì)算過程,得結(jié)果:
此時(shí),最優(yōu)值y=0.07。
由上可見,由于模型中調(diào)節(jié)因子a右側(cè)式值易偏小,應(yīng)用該模型時(shí)應(yīng)根據(jù)使用目的合理設(shè)置調(diào)節(jié)因子a,b的值。
上文所列出的一系列的詳細(xì)說明僅僅是針對本發(fā)明的可行性實(shí)施方式的具體說明,它們并非用以限制本發(fā)明的保護(hù)范圍,凡未脫離本發(fā)明技藝精神所作的等效實(shí)施方式或變更均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
對于本領(lǐng)域技術(shù)人員而言,顯然本發(fā)明不限于上述示范性實(shí)施例的細(xì)節(jié),而且在不背離本發(fā)明的精神或基本特征的情況下,能夠以其他的具體形式實(shí)現(xiàn)本發(fā)明。因此,無論從哪一點(diǎn)來看,均應(yīng)將實(shí)施例看作是示范性的,而且是非限制性的,本發(fā)明的范圍由所附權(quán)利要求而不是上述說明限定,因此旨在將落在權(quán)利要求的等同要件的含義和范圍內(nèi)的所有變化囊括在本發(fā)明內(nèi)。