閻新芳,王曉曉,馮 巖,嚴(yán)晶晶
(鄭州大學(xué) 信息工程學(xué)院, 河南 鄭州 450001)
基于Q學(xué)習(xí)的無(wú)線傳感網(wǎng)分簇拓?fù)淇刂扑惴?/p>
閻新芳,王曉曉,馮巖,嚴(yán)晶晶
(鄭州大學(xué) 信息工程學(xué)院, 河南 鄭州 450001)
摘要:為了延長(zhǎng)大規(guī)模無(wú)線傳感器網(wǎng)絡(luò)的生命周期,在ETBG算法的基礎(chǔ)上提出基于Q學(xué)習(xí)的分簇拓?fù)淇刂扑惴?該算法利用有序加權(quán)平均(OWA)算子多屬性決策的方法確定節(jié)點(diǎn)的權(quán)值,利用Q學(xué)習(xí)算法對(duì)節(jié)點(diǎn)進(jìn)行周期性的學(xué)習(xí)訓(xùn)練,按照每條路徑的Q值進(jìn)行最優(yōu)路徑的選擇,然后就可以實(shí)現(xiàn)網(wǎng)絡(luò)的拓?fù)淇刂?仿真分析表明,基于Q學(xué)習(xí)算法形成的簇樹(shù)機(jī)制解決了ETBG算法在生成簇樹(shù)過(guò)程中未能尋找到最佳路徑而造成數(shù)據(jù)傳輸時(shí)能量損耗過(guò)多的問(wèn)題,從而達(dá)到延長(zhǎng)網(wǎng)絡(luò)生命周期的目的.
關(guān)鍵詞:無(wú)線傳感器網(wǎng)絡(luò);OWA; Q學(xué)習(xí)
0引言
無(wú)線傳感器網(wǎng)絡(luò)(Wireless Sensor Networks,WSNs)針對(duì)不同的檢測(cè)環(huán)境,隨機(jī)部署大量的傳感器節(jié)點(diǎn)并在該區(qū)域內(nèi)組成多跳網(wǎng)絡(luò)WSNs,主要用來(lái)感知周圍環(huán)境的各種信息[1].在環(huán)境監(jiān)測(cè)和預(yù)報(bào)方面,無(wú)線傳感器網(wǎng)絡(luò)可用于監(jiān)視農(nóng)作物灌溉情況、土壤空氣情況、家畜和家禽的環(huán)境和遷移狀況、無(wú)線土壤生態(tài)學(xué)、大面積的地表監(jiān)測(cè)、行星探測(cè)、氣象和地理研究、洪水監(jiān)測(cè)等.基于無(wú)線傳感器網(wǎng)絡(luò),可以通過(guò)數(shù)種傳感器來(lái)監(jiān)測(cè)降雨量、河水水位和土壤水分,并依此預(yù)測(cè)山洪爆發(fā),描述生態(tài)多樣性,進(jìn)行動(dòng)物棲息地生態(tài)監(jiān)測(cè).無(wú)線傳感器網(wǎng)絡(luò)的特點(diǎn)有:節(jié)點(diǎn)硬件資源有限(能量、計(jì)算和存儲(chǔ)能力)、能量效率要求高、節(jié)點(diǎn)數(shù)量眾多且分布密集、自組織、多跳路由、動(dòng)態(tài)拓?fù)?由于無(wú)線傳感網(wǎng)絡(luò)節(jié)點(diǎn)的能量限制問(wèn)題,尤其是整個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)在一次性隨機(jī)播撒后,節(jié)點(diǎn)能量不可再生,所以延長(zhǎng)網(wǎng)絡(luò)生存期、降低網(wǎng)絡(luò)能量消耗成為傳感網(wǎng)路由協(xié)議的首要設(shè)計(jì)任務(wù)[2-3].
基于分簇的層次路由算法由于其能量高效和易于維護(hù)擴(kuò)展等特點(diǎn)被廣泛研究和應(yīng)用[4-7].其中,基于梯度的分簇拓?fù)淇刂扑惴╗5](Energy-Aware Topology Protocol Based on Gradient,ETBG)參考定向擴(kuò)散協(xié)議中梯度的思想,根據(jù)節(jié)點(diǎn)的通信半徑把網(wǎng)絡(luò)建成一個(gè)梯度場(chǎng),對(duì)同梯度等級(jí)的節(jié)點(diǎn)結(jié)合圖論的概念進(jìn)行分簇,然后在不同的梯度等級(jí)中結(jié)合極大權(quán)獨(dú)立集的概念生成簇樹(shù).但ETBG算法中生成簇樹(shù)的過(guò)程僅考慮單個(gè)簇頭節(jié)點(diǎn)的權(quán)值,并沒(méi)有綜合考慮各方面的因素,未能找到最優(yōu)成樹(shù)路徑.為解決這個(gè)問(wèn)題,筆者在ETBG算法的基礎(chǔ)上,用Q學(xué)習(xí)的方法生成簇樹(shù),綜合考慮整條路徑上的最終Q值,來(lái)選擇最優(yōu)路由路徑.
1相關(guān)工作
1.1OWA多屬性決策
多屬性決策是決策信息通過(guò)對(duì)一組現(xiàn)有方案進(jìn)行排序并選擇最優(yōu)方式的決策方法.主要包括決策信息的獲取,排序和選擇最優(yōu)信息的方法.美國(guó)著名學(xué)者Yager教授[8]提出了有序加權(quán)平均算子(Ordered Weighted Average operator,OWA),把各種信息按照從大到小重新排序,并通過(guò)數(shù)據(jù)或證據(jù)的位置進(jìn)行加權(quán)匯總,可以消除不合理的情況.OWA算子是一種較好的屬性融合方法,所以筆者采用基于最大熵的OWA多屬性決策方法來(lái)對(duì)影響權(quán)值的各種因素進(jìn)行集合處理,這樣可以讓決策者的主觀喜好帶來(lái)的影響相對(duì)減小.
1.2Q學(xué)習(xí)
Q學(xué)習(xí)屬于強(qiáng)化學(xué)習(xí)中的一種常用算法.而強(qiáng)化學(xué)習(xí)[9]是指對(duì)環(huán)境狀況進(jìn)行映射的學(xué)習(xí),為了從環(huán)境中獲得系統(tǒng)行為累積獎(jiǎng)勵(lì)值的最大值,強(qiáng)化學(xué)習(xí)系統(tǒng)的輸出行為動(dòng)作a是根據(jù)內(nèi)部的推理機(jī)制,在環(huán)境狀態(tài)輸入s作用下所得到的.然后環(huán)境改變到一個(gè)新的狀態(tài)s′,同時(shí)得到從環(huán)境反饋的瞬時(shí)回報(bào)值r,強(qiáng)化學(xué)習(xí)系統(tǒng)的目標(biāo)是使環(huán)境中的智能體學(xué)習(xí)一個(gè)行為策略π:S→A.Q學(xué)習(xí)是強(qiáng)化學(xué)習(xí)中的一種常用算法,使系統(tǒng)中的智能體所選擇的下一步的動(dòng)作能夠獲得Q值累計(jì)值最大.
其中Q值得更新公式如式(1)所示
Q(i)t+1(st,at)=r(i)(st,at,st+1)+
(1)
式中:γ為折扣因子,在本算法中令γ=1以加快學(xué)習(xí)速度;r(i)是回報(bào)函數(shù).
2基于Q學(xué)習(xí)的分簇算法
基于Q學(xué)習(xí)的分簇拓?fù)淇刂?CTQL)算法首先以基站為中心,以節(jié)點(diǎn)的通信半徑為半徑將整個(gè)網(wǎng)絡(luò)劃分為同等大小的梯度,然后利用圖論中獨(dú)立集的概念對(duì)同一梯度內(nèi)的簇頭節(jié)點(diǎn)進(jìn)行分簇,最后運(yùn)行Q學(xué)習(xí)算法使整個(gè)網(wǎng)絡(luò)成簇樹(shù).
2.1綜合權(quán)值的確定
在該算法開(kāi)始時(shí),基站依次以nR(n=1,2,…,D/R,D/R為整數(shù))為通信半徑發(fā)送梯度信息,各個(gè)節(jié)點(diǎn)確定自己的梯度值.然后各個(gè)節(jié)點(diǎn)以R為功率半徑向其鄰居節(jié)點(diǎn)廣播當(dāng)前狀態(tài)消息,其中包括節(jié)點(diǎn)ID、梯度L、當(dāng)前剩余能量node(i).Er、狀態(tài)status.每個(gè)節(jié)點(diǎn)將得到的鄰居信息保存在自己的鄰居集中,并計(jì)算本節(jié)點(diǎn)的鄰居節(jié)點(diǎn)數(shù)目.節(jié)點(diǎn)根據(jù)自己鄰居集中的信息,運(yùn)用OWA多屬性決策方法確定自己的權(quán)值,其中綜合權(quán)值定義如下,
W=w1H1+w2H2+w3H3,
(2)
式中:H1為節(jié)點(diǎn)的剩余能量因素;H2為節(jié)點(diǎn)到基站的距離因素;H3為節(jié)點(diǎn)的鄰居節(jié)點(diǎn)的數(shù)目因素;{w1,w2,w3}是各個(gè)屬性的權(quán)重集合.
各個(gè)屬性的歸一化表達(dá)式如下所示,
(3)
(4)
(5)
式中:node(i).Emax是任意節(jié)點(diǎn)i初始的最大能量值;node(i).Er是任意節(jié)點(diǎn)i當(dāng)前的剩余能量;node(i).dist(BS)是任意節(jié)點(diǎn)i到基站的距離;dtoBSmax是整個(gè)網(wǎng)絡(luò)中的節(jié)點(diǎn)與基站最遠(yuǎn)的距離;dtoBSmin是整個(gè)網(wǎng)絡(luò)中的節(jié)點(diǎn)與基站最近的距離;node(i).number是任意節(jié)點(diǎn)i的鄰居節(jié)點(diǎn)的數(shù)目;nodenumbemax是所有節(jié)點(diǎn)中鄰居節(jié)點(diǎn)數(shù)的最大值,nodenumbemin是所有節(jié)點(diǎn)中鄰居節(jié)點(diǎn)數(shù)目最小值.
針對(duì)各個(gè)屬性的權(quán)重集合{w1,w2,w3},采用基于最大熵的OWA決策方法[10]決定權(quán)重系數(shù),其中在該算法中把決策者的樂(lè)觀系數(shù)α定義為0.5,通過(guò)這樣的決策方法可以把各種因素歸一化到一個(gè)權(quán)值上,而且集結(jié)了決策者的主觀偏好以減少?zèng)Q策中不合理因素,定性和定量地分析表達(dá)了各個(gè)因素對(duì)簇頭選舉所占的比重.
2.2節(jié)點(diǎn)成簇
在各個(gè)節(jié)點(diǎn)確定自己的綜合權(quán)值后,與其同梯度等級(jí)的鄰居節(jié)點(diǎn)相比較,如果其權(quán)值最大,則宣布自己成為簇頭節(jié)點(diǎn),網(wǎng)絡(luò)中的其它節(jié)點(diǎn)按照ETBG中的方法加入不同的簇,從而完成網(wǎng)絡(luò)的分簇.
2.3建立簇樹(shù)
2.3.1改進(jìn)回報(bào)函數(shù)
在生成簇樹(shù)之前,首先確定Q學(xué)習(xí)的回報(bào)函數(shù)r(i).傳統(tǒng)的應(yīng)用于無(wú)線傳感器網(wǎng)絡(luò)的Q學(xué)習(xí)算法的回報(bào)函數(shù)只考慮單一因素影響,如兩節(jié)點(diǎn)間的跳數(shù)最少或距離最短,這樣就會(huì)忽略了節(jié)點(diǎn)的剩余能量以及節(jié)點(diǎn)間通信路徑上能量消耗的影響.筆者為了更加節(jié)省和均衡網(wǎng)絡(luò)的能量消耗,定義回報(bào)函數(shù)
(6)
式中:node(i).w是收到學(xué)習(xí)消息的任意節(jié)點(diǎn)i的權(quán)值;node(j).w是發(fā)送學(xué)習(xí)消息的節(jié)點(diǎn)j的權(quán)值;node(j).cost(i)是發(fā)送學(xué)習(xí)消息的節(jié)點(diǎn)j到收到消息的節(jié)點(diǎn)i的路徑能量消耗.綜合考慮節(jié)點(diǎn)的能量、距離、鄰居節(jié)點(diǎn)數(shù)目以及兩節(jié)點(diǎn)間的鏈路通信耗能.
2.3.2算法描述
當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)均確定分簇狀態(tài)后,進(jìn)入生成簇樹(shù)的算法.算法開(kāi)始時(shí),基站周期性地向其鄰居節(jié)點(diǎn)發(fā)送學(xué)習(xí)消息,學(xué)習(xí)消息中包含節(jié)點(diǎn)Q值、r、Er、w,各個(gè)節(jié)點(diǎn)的初始Q值為0,以啟動(dòng)路徑建立.收到學(xué)習(xí)消息的節(jié)點(diǎn)繼續(xù)向其鄰居節(jié)點(diǎn)發(fā)送學(xué)習(xí)消息直到網(wǎng)絡(luò)中所有簇頭節(jié)點(diǎn)均進(jìn)行學(xué)習(xí)訓(xùn)練.收到學(xué)習(xí)消息的節(jié)點(diǎn)只有距離大于發(fā)送消息的節(jié)點(diǎn)時(shí)才進(jìn)行學(xué)習(xí)訓(xùn)練按照規(guī)則1、2處理,并建立Q表儲(chǔ)存學(xué)習(xí)消息中的信息,否則直接拋棄該消息.
規(guī)則1收到學(xué)習(xí)消息節(jié)點(diǎn)根據(jù)公式(6)來(lái)計(jì)算節(jié)點(diǎn)的回報(bào)函數(shù),根據(jù)公式(1)來(lái)更新節(jié)點(diǎn)的Q值,并儲(chǔ)存在自己的Q表中,繼續(xù)轉(zhuǎn)發(fā)學(xué)習(xí)消息.簇頭節(jié)點(diǎn)在兩跳范圍內(nèi)轉(zhuǎn)發(fā).非簇頭節(jié)點(diǎn)在一跳范圍內(nèi)轉(zhuǎn)發(fā),在轉(zhuǎn)發(fā)學(xué)習(xí)消息的同時(shí)轉(zhuǎn)發(fā)節(jié)點(diǎn)的Q表,這樣可以讓其鄰居節(jié)點(diǎn)在此基礎(chǔ)上計(jì)算Q值從而減少計(jì)算量.
規(guī)則2等待到達(dá)該節(jié)點(diǎn)的所有路徑的Q值逐步迭代出來(lái)后,選出該節(jié)點(diǎn)Q表中Q最大值所對(duì)應(yīng)的節(jié)點(diǎn)作為自己的父親節(jié)點(diǎn),并向該父親節(jié)點(diǎn)發(fā)送一個(gè)father消息.收到father消息的節(jié)點(diǎn)如果是簇頭節(jié)點(diǎn)則將發(fā)送給它學(xué)習(xí)消息的節(jié)點(diǎn)置為網(wǎng)關(guān)節(jié)點(diǎn),如果收到消息的節(jié)點(diǎn)是簇成員節(jié)點(diǎn),則聲明自己為網(wǎng)關(guān)節(jié)點(diǎn).
整個(gè)網(wǎng)絡(luò)的簇頭節(jié)點(diǎn)都遍歷后,算法結(jié)束.這樣就可以得到各個(gè)節(jié)點(diǎn)到基站進(jìn)行數(shù)據(jù)傳輸?shù)淖顑?yōu)路徑.在該算法中,每一次節(jié)點(diǎn)間的通信路徑選擇都考慮節(jié)點(diǎn)的跳數(shù)、節(jié)點(diǎn)間的通信能力、剩余能量等因素,因此選擇的路徑可以平衡網(wǎng)絡(luò)能量消耗,延長(zhǎng)網(wǎng)絡(luò)的生命周期,具有一定的實(shí)用價(jià)值和現(xiàn)實(shí)意義.
2.4特例分析
特例:在一個(gè)200×200 m2的的樹(shù)林區(qū)域內(nèi)隨機(jī)拋灑50個(gè)傳感器節(jié)點(diǎn),用來(lái)監(jiān)測(cè)樹(shù)林的濕度以防范火災(zāi).采用文獻(xiàn)[4]所示的能量模型,各個(gè)參數(shù)的設(shè)定如下:網(wǎng)絡(luò)中所有節(jié)點(diǎn)初始能量0.5 J,每接受一位消息消耗能量50 nJ/bit,每發(fā)送一位消息傳輸一米距離的能量消耗為0.1 nJ/bit·m2,消息包固定長(zhǎng)度128 bits,通信半徑R=50 m,n=4,基站的Q=50.假定節(jié)點(diǎn)位置不變,節(jié)點(diǎn)間通信正常.不考慮消息發(fā)送過(guò)程中的沖突的重傳且節(jié)點(diǎn)間不存在單向鏈路.
圖1所示為運(yùn)行該算法后的簇樹(shù)圖,可以看出基站BS1發(fā)送一個(gè)學(xué)習(xí)消息,其鄰居節(jié)點(diǎn)進(jìn)行轉(zhuǎn)發(fā),其中簇頭節(jié)點(diǎn)35繼續(xù)向其鄰居節(jié)點(diǎn)發(fā)送學(xué)習(xí)消息,其鄰居節(jié)點(diǎn)中的節(jié)點(diǎn)按照規(guī)則(1)、(2)進(jìn)行更新;基站BS1的鄰居節(jié)點(diǎn)中的非簇頭節(jié)點(diǎn)也轉(zhuǎn)發(fā)學(xué)習(xí)消息,如果作為網(wǎng)關(guān)節(jié)點(diǎn)連接簇樹(shù),則退出其所屬的簇,直接與基站通信.其中,例如節(jié)點(diǎn)的24的通信路徑24→35→BS1的疊加的Q值為58.12.
3算法性能分析
為了對(duì)算法的性能進(jìn)行評(píng)估,把該算法和ETBG算法進(jìn)行比較.定義網(wǎng)絡(luò)生命周期為從算法開(kāi)始運(yùn)行到第一個(gè)節(jié)點(diǎn)死亡之間的時(shí)間,以數(shù)據(jù)采集總輪數(shù)來(lái)表示.在仿真參數(shù)為200×200 m2的樹(shù)林里隨機(jī)拋灑200個(gè)傳感器節(jié)點(diǎn)節(jié)點(diǎn),監(jiān)測(cè)整個(gè)網(wǎng)絡(luò)的生命周期.在20次不同的場(chǎng)景下進(jìn)行仿真,然后取其平均值,可得不同通信半徑下兩種算法的生存期對(duì)比圖,如圖2所示.
可以看到,CTQL算法的生存期較ETBG算法更平穩(wěn)且網(wǎng)絡(luò)的生命周期更長(zhǎng),傳感器節(jié)點(diǎn)的可監(jiān)測(cè)時(shí)間也更長(zhǎng),當(dāng)R=40時(shí),兩者差距最小.總體上,隨著節(jié)點(diǎn)通信半徑的增加,在網(wǎng)絡(luò)的生存周期內(nèi),數(shù)據(jù)傳輸?shù)妮啍?shù)在減小.這是因?yàn)殡S著通信半徑R增大,形成簇?cái)?shù)減少而成員數(shù)增加,同時(shí)簇頭之間的距離增大,信息交互所消耗的能量也越大,從而數(shù)據(jù)傳輸?shù)妮啍?shù)就會(huì)減少.
4結(jié)論
通過(guò)研究EBTG算法中存在的網(wǎng)絡(luò)能量不均衡,生成簇樹(shù)的路徑?jīng)]有優(yōu)化的問(wèn)題,提出了CTQL算法.該算法和ETBG算法相比,主要利用了基于極大熵的OWA多屬性決策的方法來(lái)將決定綜合權(quán)值,更加全面的反映了節(jié)點(diǎn)在競(jìng)選簇頭時(shí)的能力.利用Q學(xué)習(xí)算法生成簇樹(shù),綜合考慮節(jié)點(diǎn)的剩余能量,路徑通信耗能因素優(yōu)化了數(shù)據(jù)傳輸時(shí)的路徑選擇,節(jié)省了整個(gè)網(wǎng)絡(luò)的能量消耗.通過(guò)在樹(shù)林環(huán)境中仿真結(jié)果表明,該算法與ETBG算法相比較有效地延長(zhǎng)了網(wǎng)絡(luò)的生命周期.
參考文獻(xiàn):
[1]TUBAISHAT M, MADRIA.SENSOR S. Networks: an Overview[J]. IEEE Potentials, 2003, 22(2):20-23.
[2]HEINZELMAN W B, CHANDRAKASAN A P ,BALAKRISHNAN H. An application-specific protocol architecture for wireless microsensor network [J].Wireless Communications, 2002,1(4):660-670.
[3]MANJESHWAR A, AGRAWAL D P. TEEN:a routing qrotocol for enhanced efficiency in wireless sensor networks[C]//IEEE. International Prroceedings of 15th Parallel and Distributed Processing Symposium. IEEE Conference Proceedings, 2001:2009-2015.
[4]AN Na, YAN Xin-fang, ZHU Yu-ang. A virtual backbone network algorithm based on the multilevel cluster tree with gateway for wireless sensor networks[C]//Proceedings of CCWMSN'2007Shanghai,China: 2007.12 The IET International Communication Conference on Wireless Mobile and Sensor Networks. Shanghai, 2007:462-465.
[5]閻新芳, 段磊, 李騰. 無(wú)線傳感網(wǎng)中基于梯度的拓?fù)淇刂扑惴╗J]. 計(jì)算機(jī)工程與應(yīng)用, 2011,47(2): 95- 98.
[6]閻新芳, 王志龍, 閆新生. WSN中基于梯度場(chǎng)拓?fù)淇刂扑惴ǖ木S護(hù)更新[J]. 傳感器與微系統(tǒng), 2011,30(8):56- 58.
[7]YAN Xin-fang, ZHANG Yong-kun , TANG Hai-liang. An ETBG optimization algorithm based on analytic hierarchy process in WSS[C]//Proceedings of ICCSEE'2013: 2013.3 The 2nd International Conference on Computer Science and Electronics Engineering. China,2013:1687-1690.
[8]YAGER R R. Weighted maximum entropy OWA aggregation with applications to decision making under risk[J].IEEE Transactions on Systems, Man, and Cybernetics-Part A:Systems and Humans, 2009, 39(3):183-189.
[9]MEHTA N, NATARAJAN S, TADEPALLI P, et al. Transfer in variable-reward hierarchical reinforcement learning[J]. Machine Learning. 2008 (3):156-172.
[10]YAGER R R. “Centered OWA operators” Soft Comput [J].soft Computing, 2007,11(7):631-639.
A Clustering Topology Algorithm Based on Q-learning in WSN
YAN Xin-fang, WANG Xiao-xiao, FENG Yan, YAN Jing-jing
(School of Information Engineering, Zhengzhou University, Zhengzhou 450001,China)
Abstract:To prolong the lifetime of wireless sensor network, a Clustering Topology Algorithm Based on Q-learning in WSN (CTQL) is proposed on the basis of classical clustering algorithms such as ETBG. The Ordered Weighted Average (OWA) operator multi-attribute decision making method is used to determine the weight of the nodes, and Q learning algorithm is used to periodically train the cluster heads. So the Q value of the optimal path is selected of this algorithm and the topology control is realized. Through simulation study shows that the use of Q-learning algorithm to resolve the problem that much energy consumption of ETBG algorithm fails to find the best path and CTQL effectively extend the network lifetime.
Key words:wireless sensor network;Ordered Weighted Average(OWA) operator;Q-learning
中圖分類號(hào):TP393
文獻(xiàn)標(biāo)志碼:A
doi:10.3969/j.issn.1671-6833.2015.02.019
文章編號(hào):1671-6833(2015)02-0085-04
作者簡(jiǎn)介:閻新芳(1958-),女,河南嵩縣人,鄭州大學(xué)教授,博士,主要從事無(wú)線傳感網(wǎng)等方面研究,E-mail:iexfyan@zzu.edu.cn.
基金項(xiàng)目:鄭州市科技攻關(guān)基金資助項(xiàng)目(20120555)
收稿日期:2014-10-30;
修訂日期:2014-12-27