專利名稱:無線傳感器與執(zhí)行器網(wǎng)絡(luò)及該網(wǎng)絡(luò)的最短延時(shí)路由方法
技術(shù)領(lǐng)域:
本發(fā)明涉及無線傳感器與執(zhí)行器網(wǎng)絡(luò)(WSAN)領(lǐng)域,具體涉及一種無線傳感器與執(zhí)行器網(wǎng)絡(luò)及該網(wǎng)絡(luò)的最短延時(shí)路由方法。
背景技術(shù):
無線傳感器與執(zhí)行器網(wǎng)絡(luò)(WSAN)是由無線傳感器網(wǎng)絡(luò)(WSN)衍生而來。在無線傳感器與執(zhí)行器網(wǎng)絡(luò)中,目標(biāo)區(qū)域除了分散部署了大量微型傳感節(jié)點(diǎn)(Sensor)外,還分散部署了一定數(shù)量的執(zhí)行節(jié)點(diǎn)(actuator)和匯集節(jié)點(diǎn)(Sink)。傳感節(jié)點(diǎn)監(jiān)測(cè)、感知和采集監(jiān)測(cè)對(duì)象的信息,并將信息傳送到匯集節(jié)點(diǎn)。匯集節(jié)點(diǎn)根據(jù)收集的監(jiān)測(cè)信息做出決策選擇由哪些執(zhí)行節(jié)點(diǎn)執(zhí)行相關(guān)的操作,從而實(shí)現(xiàn)實(shí)時(shí)動(dòng)態(tài)的交互。無線傳感器與執(zhí)行器網(wǎng)絡(luò)追求的一個(gè)主要目標(biāo)就是提高通信實(shí)時(shí)性,要求執(zhí)行節(jié)點(diǎn)對(duì)感應(yīng)事件快速做出反應(yīng),例如火災(zāi)發(fā)生時(shí),如果執(zhí)行節(jié)點(diǎn)無法對(duì)感應(yīng)事件快速的做出反應(yīng),火災(zāi)很有可能會(huì)蔓延,最后造成一些災(zāi)難性的后果,嚴(yán)重威脅到國(guó)家財(cái)產(chǎn)和生命安全。因此無線傳感器與執(zhí)行器網(wǎng)絡(luò)中通信實(shí)時(shí)性尤為關(guān)鍵,為了提高通信實(shí)時(shí)性就必然要求數(shù)據(jù)在傳輸過程中的延遲盡可能達(dá)到最小。然而在目前的無線傳感器與執(zhí)行器網(wǎng)絡(luò)中,傳感節(jié)點(diǎn)通常都是采用通過電池供電的低成本、小功耗的設(shè)備,這樣的設(shè)備作為傳感節(jié)點(diǎn)既需要對(duì)其進(jìn)行頻繁地電池更換,又限制了其感應(yīng)范圍和通信距離。因此,為了確保無線傳感器與執(zhí)行器網(wǎng)絡(luò)的實(shí)時(shí)性,在目前的無線傳感器與執(zhí)行器網(wǎng)絡(luò)的目標(biāo)區(qū)域內(nèi)通常隨機(jī)部署了成百上千的冗余傳感節(jié)點(diǎn),來延長(zhǎng)網(wǎng)絡(luò)生命周期,然而這種傳感節(jié)點(diǎn)的部署密度對(duì)于具有較高傳輸能量的匯集節(jié)點(diǎn)和具有較高執(zhí)行范圍的執(zhí)行節(jié)點(diǎn)是不需要的。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種無線傳感器與執(zhí)行器網(wǎng)絡(luò)及該網(wǎng)絡(luò)的最短延時(shí)路由方法,其具有冗余傳感節(jié)點(diǎn)數(shù)量少、且通信實(shí)時(shí)性強(qiáng)的特點(diǎn)。為解決上述問題,本發(fā)明是通過以下技術(shù)方案實(shí)現(xiàn)的—種無線傳感器與執(zhí)行器網(wǎng)絡(luò)的最短延時(shí)路由方法,該無線傳感器與執(zhí)行器網(wǎng)絡(luò)包括分散部署在目標(biāo)區(qū)域內(nèi)的多個(gè)傳感節(jié)點(diǎn)、多個(gè)匯集節(jié)點(diǎn)和多個(gè)執(zhí)行節(jié)點(diǎn);所有的匯集節(jié)點(diǎn)在整個(gè)網(wǎng)絡(luò)內(nèi)移動(dòng),且每個(gè)匯集節(jié)點(diǎn)的移動(dòng)路徑TjG = 1,2,……,M)都是相互獨(dú)立的閉合回路,且每條移動(dòng)路徑Tj內(nèi)每個(gè)傳感節(jié)點(diǎn)均只經(jīng)過一次;當(dāng)匯集節(jié)點(diǎn)接近某個(gè)傳感節(jié)點(diǎn)時(shí),該傳感節(jié)點(diǎn)將自身緩存區(qū)內(nèi)的數(shù)據(jù)上傳給匯集節(jié)點(diǎn),執(zhí)行節(jié)點(diǎn)根據(jù)匯集節(jié)點(diǎn)收到的數(shù)據(jù)做出反應(yīng);每條移動(dòng)路徑L由以下步驟確定(1)計(jì)算經(jīng)過第i個(gè)傳感節(jié)點(diǎn)Si的移動(dòng)路徑的條數(shù)k,即Ic = WiXM式中,i = 1,2,……,N ;N為傳感節(jié)點(diǎn)的個(gè)數(shù);M為匯集節(jié)點(diǎn)的個(gè)數(shù)-,W1為傳感節(jié)點(diǎn)Si對(duì)應(yīng)的權(quán)重,且0 < Wi < 1 ;
(2)為每條移動(dòng)路徑L分配傳感節(jié)點(diǎn),即將具有相同k值的傳感節(jié)點(diǎn)歸為一組集合,記為集合sk,此處Sk的下標(biāo)k表示該集合中傳感節(jié)點(diǎn)所對(duì)應(yīng)的k值;同時(shí)根據(jù)k值的大小順序依次執(zhí)行以下步驟(2. 1)當(dāng)k = M時(shí),將集合Sk中Si分配給所有的移動(dòng)路徑Tj ;(2. 2)當(dāng)k = M-I時(shí),將集合Sk中的Si分配給任意的M_1條移動(dòng)路徑Tj ;(2. 3)重復(fù)步驟(2. 2)直到k = 1,此時(shí)將集合Sk中的Si分配給一條移動(dòng)路徑Tj ;(3)對(duì)每條移動(dòng)路徑L均采用蛙跳算法求解最短路徑解,即(3. 1)初始化,設(shè)定每條移動(dòng)路徑L的可行解子集合的數(shù)量m以及每個(gè)可行解集合內(nèi)的可行解個(gè)數(shù)n,則每條移動(dòng)路徑L的所有可行解總數(shù)F = mXn ;(3. 2)隨機(jī)生成每條移動(dòng)路徑L的F個(gè)可行解組成的初始群體,并設(shè)每個(gè)移動(dòng)路徑可行解U= (U1, U2,……,凡),其中仏,隊(duì),……,Un分別代表該移動(dòng)路徑可行解所依次經(jīng)過的傳感節(jié)點(diǎn)的編號(hào);(3. 3)計(jì)算上述各個(gè)移動(dòng)路徑可行解的適應(yīng)度,該移動(dòng)路徑可行解的適應(yīng)度等于該移動(dòng)路徑長(zhǎng)度的倒數(shù);(3. 4)將上述移動(dòng)路徑可行解按適應(yīng)值大小進(jìn)行降序排列,并將適應(yīng)度最大的移動(dòng)路徑可行解記錄為初始的全局最好解Px;同時(shí),按以下分配規(guī)則將上述各個(gè)移動(dòng)路徑可行解分配到m個(gè)子集合Yk中,每個(gè)子集合Yk中包含η個(gè)移動(dòng)路徑可行解;分配規(guī)則Yk= {X(p), f(p) |X(p) = X[q+mX (p_l)],f(p) = f[q+mX (p_l)]}式中,p = 1,2,……,η ;q = 1,2,……,m ;Χ(ρ)表示子集合中的第ρ個(gè)移動(dòng)路徑可行解,f(p)表示第P個(gè)移動(dòng)路徑可行解的適應(yīng)度;(3. 5)執(zhí)行局部搜索,對(duì)初始的全局最好解Px進(jìn)行更新,具體過程如下(3. 5. 1)在每個(gè)子集合Yk內(nèi)找到適應(yīng)度最大的移動(dòng)路徑可行解即局部最優(yōu)解Pb, 以及適應(yīng)度最小的移動(dòng)路徑可行解即局部最差解Pw ;(3. 5. 2)按以下公式對(duì)每個(gè)子集合Yk中的局部最差解Pw進(jìn)行更新,Pq = Pw+S,①S,= min {int [rand (Pb-Pw) ],smax},Pb-Pw 之 0②S,= max {int [rand (Pb-Pw) ],_smax},Pb-Pw <0③式中,Pq表示更新后的最差解;S ‘表示移動(dòng)路徑可行解的調(diào)整矢量;Smax表示移動(dòng)路徑可行解允許改變的最大步長(zhǎng),其值由系統(tǒng)預(yù)置;rand表示隨機(jī)量,其值由計(jì)算機(jī)隨機(jī)生成或者有系統(tǒng)預(yù)置,取值范圍在(0,1]之間;(3. 6)在每個(gè)子集合Yk都進(jìn)行過一輪更新之后,將各個(gè)子集合Yk進(jìn)行混合,并將更新后的移動(dòng)路徑可行解按適應(yīng)值大小進(jìn)行降序排列,并將適應(yīng)度最大的移動(dòng)路徑可行解記錄為更新后的全局最好解Px ;(3. 7)判斷是否滿足算法收斂條件,若滿足,輸出更新后的全局最好解&作為最優(yōu)路徑序列;否則,返回到步驟(3. 4)再次更新全局最好解Px。上述步驟(3. 7)所述算法收斂條件為①在最近的K次全局思想交流過程之后,全局最好解沒有得到明顯的改進(jìn);或②算法預(yù)先定義的函數(shù)評(píng)價(jià)次數(shù)已經(jīng)達(dá)到。上述方案中,所述傳感節(jié)點(diǎn)的個(gè)數(shù)N大于匯集節(jié)點(diǎn)的個(gè)數(shù)M。上述方案中,所述傳感節(jié)點(diǎn)的個(gè)數(shù)N的取值范圍為1 <N< 10000 ;匯集節(jié)點(diǎn)的個(gè)數(shù)M的取值范圍為1 < M < 1000。能夠?qū)崿F(xiàn)上述最短延時(shí)路由方法的一種無線傳感器與執(zhí)行器網(wǎng)絡(luò),包括分散部署在目標(biāo)區(qū)域內(nèi)的多個(gè)傳感節(jié)點(diǎn)、匯集節(jié)點(diǎn)和執(zhí)行節(jié)點(diǎn)。所有的匯集節(jié)點(diǎn)均是移動(dòng)的;這些匯集節(jié)點(diǎn)在整個(gè)網(wǎng)絡(luò)內(nèi)移動(dòng),且每個(gè)匯集節(jié)點(diǎn)的移動(dòng)路徑Tj都是相互獨(dú)立的;當(dāng)匯集節(jié)點(diǎn)接近某個(gè)傳感節(jié)點(diǎn)時(shí),該傳感節(jié)點(diǎn)將自身緩存區(qū)內(nèi)的數(shù)據(jù)上傳給匯集節(jié)點(diǎn),執(zhí)行節(jié)點(diǎn)根據(jù)匯集節(jié)點(diǎn)收到的數(shù)據(jù)做出相應(yīng)的反應(yīng);每個(gè)傳感節(jié)點(diǎn)均被預(yù)設(shè)了不同的權(quán)重Wi,其中0 < Wi < 1,該權(quán)重的大小由該傳感節(jié)點(diǎn)所在區(qū)域事件發(fā)生的頻率以及檢測(cè)事件類型的重要性決定,權(quán)重越大,經(jīng)過該傳感節(jié)點(diǎn)的移動(dòng)路徑η越多。上述方案中,所述傳感節(jié)點(diǎn)的個(gè)數(shù)N大于匯集節(jié)點(diǎn)的個(gè)數(shù)Μ。上述方案中,所述傳感節(jié)點(diǎn)的個(gè)數(shù)N的取值范圍為1 <Ν< 10000 ;匯集節(jié)點(diǎn)的個(gè)數(shù)M的取值范圍為1 < M < 1000。與現(xiàn)有技術(shù)相比,本發(fā)明具有如下特點(diǎn)1、采用一組移動(dòng)的匯集節(jié)點(diǎn)負(fù)責(zé)信息采集,傳感節(jié)點(diǎn)并非固定和某個(gè)匯集節(jié)點(diǎn)通訊,從而增強(qiáng)了網(wǎng)絡(luò)的靈活性和實(shí)時(shí)性;2、根據(jù)感應(yīng)節(jié)點(diǎn)的所在區(qū)域事件發(fā)生的頻率的大小以及檢測(cè)事件類型的重要性決定經(jīng)過的路徑的條數(shù),縮短了傳感節(jié)點(diǎn)檢測(cè)到事件后到上傳給匯集節(jié)點(diǎn)的時(shí)間間隔,從而有效的減少了通訊延遲,提高了實(shí)時(shí)性;3、采用目前較新較成熟的蛙跳算法來對(duì)每條匯集節(jié)點(diǎn)路由路徑Tj求最短路徑的最好解,再次有效的減少了通訊延遲,提高了實(shí)時(shí)性。
圖1為本發(fā)明一種無線傳感器與執(zhí)行器網(wǎng)絡(luò)示意圖。圖2為本發(fā)明一種無線傳感器與執(zhí)行器網(wǎng)絡(luò)的最短延時(shí)路由方法流程圖。
具體實(shí)施例方式參見圖1,本發(fā)明一種無線傳感器與執(zhí)行器網(wǎng)絡(luò),包括分散部署在目標(biāo)區(qū)域內(nèi)的多個(gè)傳感節(jié)點(diǎn)、匯集節(jié)點(diǎn)和執(zhí)行節(jié)點(diǎn),其特征在于所有的匯集節(jié)點(diǎn)均是移動(dòng)的;這些匯集節(jié)點(diǎn)在整個(gè)網(wǎng)絡(luò)內(nèi)移動(dòng),且每個(gè)匯集節(jié)點(diǎn)的移動(dòng)路徑Tj都是相互獨(dú)立的;當(dāng)匯集節(jié)點(diǎn)接近某個(gè)傳感節(jié)點(diǎn)時(shí),該傳感節(jié)點(diǎn)將自身緩存區(qū)內(nèi)的數(shù)據(jù)上傳給匯集節(jié)點(diǎn),執(zhí)行節(jié)點(diǎn)根據(jù)匯集節(jié)點(diǎn)收到的數(shù)據(jù)做出相應(yīng)的反應(yīng);每個(gè)傳感節(jié)點(diǎn)均被預(yù)設(shè)了不同的權(quán)重Wi,其中0 < Wi < 1, 該權(quán)重的大小由該傳感節(jié)點(diǎn)所在區(qū)域事件發(fā)生的頻率以及檢測(cè)事件類型的重要性決定,權(quán)重越大,經(jīng)過該傳感節(jié)點(diǎn)的移動(dòng)路徑Tj越多。考慮無線傳感器執(zhí)行器網(wǎng)絡(luò)中分散部署了大量的傳感節(jié)點(diǎn)以及多個(gè)執(zhí)行器節(jié)點(diǎn)和移動(dòng)的匯集節(jié)點(diǎn)。匯集節(jié)點(diǎn)和執(zhí)行節(jié)點(diǎn)均具備了高的傳輸能力和傳輸范圍,而且可以直接通信。因此在本發(fā)明中,所述傳感節(jié)點(diǎn)的個(gè)數(shù)N大于匯集節(jié)點(diǎn)的個(gè)數(shù)M。傳感節(jié)點(diǎn)的個(gè)數(shù)N和匯集節(jié)點(diǎn)的個(gè)數(shù)M根據(jù)具體的應(yīng)用情況而定,網(wǎng)絡(luò)覆蓋面積越大,M和N的取值也會(huì)越大,在本發(fā)明優(yōu)選實(shí)施例中,所述傳感節(jié)點(diǎn)的個(gè)數(shù)N的取值范圍為1 < N < 10000 ;匯集節(jié)點(diǎn)的個(gè)數(shù)M的取值范圍為1 < M < 1000。參見圖2,上述無線傳感器與執(zhí)行器網(wǎng)絡(luò)的最短延時(shí)路由方法,該無線傳感器與執(zhí)行器網(wǎng)絡(luò)包括分散部署在目標(biāo)區(qū)域內(nèi)的多個(gè)傳感節(jié)點(diǎn)、多個(gè)匯集節(jié)點(diǎn)和多個(gè)執(zhí)行節(jié)點(diǎn);
6其特征在于所有的匯集節(jié)點(diǎn)在整個(gè)網(wǎng)絡(luò)內(nèi)移動(dòng),且每個(gè)匯集節(jié)點(diǎn)的移動(dòng)路徑1^(」=1, 2,……,M)都是相互獨(dú)立的閉合回路,且每條移動(dòng)路徑Tj內(nèi)每個(gè)傳感節(jié)點(diǎn)均只經(jīng)過一次; 當(dāng)匯集節(jié)點(diǎn)接近某個(gè)傳感節(jié)點(diǎn)時(shí),該傳感節(jié)點(diǎn)將自身緩存區(qū)內(nèi)的數(shù)據(jù)上傳給匯集節(jié)點(diǎn),執(zhí)行節(jié)點(diǎn)根據(jù)匯集節(jié)點(diǎn)收到的數(shù)據(jù)做出反應(yīng);每條移動(dòng)路徑η由以下步驟確定(1)計(jì)算經(jīng)過第i個(gè)傳感節(jié)點(diǎn)Si的移動(dòng)路徑的條數(shù)k,即Ic = WiXM式中,i = 1,2,……,N ;N為傳感節(jié)點(diǎn)的個(gè)數(shù);M為匯集節(jié)點(diǎn)的個(gè)數(shù);傳感節(jié)點(diǎn)的個(gè)數(shù)N和匯集節(jié)點(diǎn)的個(gè)數(shù)M根據(jù)具體的應(yīng)用情況而定,網(wǎng)絡(luò)覆蓋面積越大,M和N的取值也會(huì)越大,在本發(fā)明優(yōu)選實(shí)施例中,所述傳感節(jié)點(diǎn)的個(gè)數(shù)N的取值范圍為1 <N< 10000 ;匯集節(jié)點(diǎn)的個(gè)數(shù)M的取值范圍為1 < M < 1000 %為傳感節(jié)點(diǎn)Si對(duì)應(yīng)的權(quán)重,且0 < Wi < 1 ;例如感應(yīng)節(jié)點(diǎn)Si對(duì)應(yīng)的權(quán)重值Wi = 0. 75,匯集節(jié)點(diǎn)個(gè)數(shù)M = 4,則k = 3,這就說明4個(gè)匯集節(jié)點(diǎn)中有3個(gè)匯集節(jié)點(diǎn)的移動(dòng)路徑會(huì)經(jīng)過感應(yīng)節(jié)點(diǎn)Si。(2)為每條移動(dòng)路徑L分配傳感節(jié)點(diǎn),即將具有相同k值的傳感節(jié)點(diǎn)歸為一組集合,記為集合Sk(此處Sk的下標(biāo)k表示該集合中傳感節(jié)點(diǎn)所對(duì)應(yīng)的k值,如S3表示該集合的感應(yīng)節(jié)點(diǎn)的k值都等于3,即該集合中任意感應(yīng)節(jié)均會(huì)有3條匯集節(jié)點(diǎn)移動(dòng)路徑經(jīng)過); 同時(shí)根據(jù)k值的大小順序依次執(zhí)行以下步驟(2. 1)當(dāng)k = M時(shí)(表示該集合內(nèi)的感應(yīng)節(jié)點(diǎn)權(quán)重值Wi = 1,即每個(gè)匯集節(jié)點(diǎn)的移動(dòng)路徑L都要經(jīng)過這些節(jié)點(diǎn)),將集合Sk中Si分配給所有的移動(dòng)路徑L ;即對(duì)于作e Sk, 有 Si G Tj,, j = 1……M;(2. 2)當(dāng)k = M-I時(shí),將集合Sk中的Si即e叉分配給任意的M_1條移動(dòng)路徑
Tj;(2.3)重復(fù)步驟(2.2)直到k = 1 (即對(duì)于網(wǎng)絡(luò)內(nèi)任意一個(gè)感應(yīng)節(jié)點(diǎn),至少有一條Tj會(huì)經(jīng)過它),此時(shí)將集合Sk中的Si分配給一條移動(dòng)路徑Tj ;即對(duì)于V^ e ^,有使 Si e Tj (S為網(wǎng)絡(luò)內(nèi)所有傳感節(jié)點(diǎn)的集合)(3)由于Tj相互獨(dú)立,因此每條Tj均可以看出獨(dú)立的TSP問題,則對(duì)每條移動(dòng)路徑Tj采用蛙跳算法求解最短路徑解,例如根據(jù)上一步已知道移動(dòng)路徑T1所要經(jīng)過的感應(yīng)節(jié)點(diǎn),求解匯集節(jié)點(diǎn)1的移動(dòng)路徑T1 ;執(zhí)行如下步驟(3. 1)初始化,設(shè)定每條移動(dòng)路徑L的可行解子集合的數(shù)量m以及每個(gè)可行解集合內(nèi)的可行解個(gè)數(shù)n,則每條移動(dòng)路徑L的所有可行解總數(shù)F = mXn ;一般來說m和η可以隨便取值,算法開始前事先根據(jù)具體情況預(yù)置,可以是幾個(gè)也可以上百個(gè)或者上千,m和η取值越大,最后得到的結(jié)果就會(huì)更好,不過通常值越大計(jì)算量就越大O(3. 2)隨機(jī)生成每條移動(dòng)路徑L的F個(gè)可行解組成的初始群體,并設(shè)每個(gè)移動(dòng)路徑可行解U= (U1, U2,……,凡),其中仏,隊(duì),……,Un分別代表該移動(dòng)路徑可行解所依次經(jīng)過的傳感節(jié)點(diǎn)的編號(hào);例如假設(shè)已知匯集節(jié)點(diǎn)1的移動(dòng)路徑T1要經(jīng)過5個(gè)傳感節(jié)點(diǎn),將這個(gè)五個(gè)傳感節(jié)點(diǎn)分別編號(hào)為1-5,則青蛙U= (3,4,1,5,2)表示匯集節(jié)點(diǎn)1移動(dòng)路徑為3-4-1-5-2_3, 為T1的一個(gè)移動(dòng)路徑可行解。(3. 3)計(jì)算上述各個(gè)移動(dòng)路徑可行解的適應(yīng)度,該移動(dòng)路徑可行解的適應(yīng)度等于該移動(dòng)路徑長(zhǎng)度的倒數(shù);(3. 4)將上述移動(dòng)路徑可行解按適應(yīng)值大小進(jìn)行降序排列(若碰到適應(yīng)值相同的個(gè)體,排序不分先后),并將適應(yīng)度最大的移動(dòng)路徑可行解記錄為初始的全局最好解Px ;同時(shí),按以下分配規(guī)則將上述各個(gè)移動(dòng)路徑可行解分配到m個(gè)子集合Yk中,每個(gè)子集合Yk中包含η個(gè)移動(dòng)路徑可行解;分配規(guī)則Yk= {X(p), f(p) |X(p) = X[q+mX (p_l)],f(p) = f[q+mX (p_l)]}式中,p = 1,2,……,η ;q = 1,2,……,m ;Χ(ρ)表示子集合中的第ρ個(gè)移動(dòng)路徑可行解,f(p)表示第P個(gè)移動(dòng)路徑可行解的適應(yīng)度;若設(shè)定m = 3,F(xiàn)只移動(dòng)路徑可行解按適應(yīng)度由高到低排列,位置位于第一的移動(dòng)路徑可行解分入第一子集合Y1,第二的移動(dòng)路徑可行解分入第二子集合γ2,第三的移動(dòng)路徑可行解分入第三子集合Y3,第四的移動(dòng)路徑可行解分入第一子集合Y1,依次類推,將所有移動(dòng)路徑可行解劃分到3個(gè)子集合中。(3. 5)執(zhí)行局部搜索,對(duì)初始的全局最好解Px進(jìn)行更新,具體過程如下(3. 5. 1)在每個(gè)子集合Yk內(nèi)找到適應(yīng)度最大的移動(dòng)路徑可行解即局部最優(yōu)解Pb, 以及適應(yīng)度最小的移動(dòng)路徑可行解即局部最差解Pw ;(3. 5. 2)按以下公式對(duì)每個(gè)子集合Yk中的局部最差解Pw進(jìn)行更新,Pq = Pw+S,①S,= min {int [rand (Pb-Pw) ],smJ,Pb-Pw 彡 0②S,= max {int [rand (Pb-Pw) ],_smax},Pb-Pw <0③式中,Pq表示更新后的最差解;S ‘表示移動(dòng)路徑可行解的調(diào)整矢量;Smax表示移動(dòng)路徑可行解允許改變的最大步長(zhǎng),其值由系統(tǒng)預(yù)置;rand表示隨機(jī)量,它由計(jì)算機(jī)隨機(jī)生成或者有系統(tǒng)預(yù)置,其取值范圍在介于0 1之間;設(shè)Pw = (13542),Pb = (21534),允許改變的最大步長(zhǎng) Smax = 3,若 rand = 0. 5, 則 Pq(I) = 1+min {int
,3} = 1 ;Pq(2) = 3+max {int
,-3} = 2 ; 依此相同的操作完成更新策略后可得到一個(gè)更新的解Pq= (12543)來代替原有的Pw = (13542)。(3. 6)在每個(gè)子集合Yk都進(jìn)行過一輪更新之后,將各個(gè)子集合Yk進(jìn)行混合,并將更新后的移動(dòng)路徑可行解按適應(yīng)值大小進(jìn)行降序排列,并將適應(yīng)度最大的移動(dòng)路徑可行解記錄為更新后的全局最好解Px ;(3. 7)判斷是否滿足算法收斂條件,若滿足,輸出更新后的全局最好解&作為最優(yōu)路徑序列;否則,返回到步驟(3. 4)再次更新全局最好解Px。在本發(fā)明中,所述算法收斂條件為①在最近的K次全局思想交流過程之后,全局最好解沒有得到明顯的改進(jìn);或②算法預(yù)先定義的函數(shù)評(píng)價(jià)次數(shù)已經(jīng)達(dá)到。上述進(jìn)行全局思想交流的次數(shù)K的取值范圍在(1,10000]之間。
權(quán)利要求
1. 一種無線傳感器與執(zhí)行器網(wǎng)絡(luò)的最短延時(shí)路由方法,該無線傳感器與執(zhí)行器網(wǎng)絡(luò)包括分散部署在目標(biāo)區(qū)域內(nèi)的多個(gè)傳感節(jié)點(diǎn)、多個(gè)匯集節(jié)點(diǎn)和多個(gè)執(zhí)行節(jié)點(diǎn);其特征在于 所有的匯集節(jié)點(diǎn)在整個(gè)網(wǎng)絡(luò)內(nèi)移動(dòng),且每個(gè)匯集節(jié)點(diǎn)的移動(dòng)路徑Tj (j = 1,2,……,M)都是相互獨(dú)立的閉合回路,且每條移動(dòng)路徑Tj內(nèi)每個(gè)傳感節(jié)點(diǎn)均只經(jīng)過一次;當(dāng)匯集節(jié)點(diǎn)接近某個(gè)傳感節(jié)點(diǎn)時(shí),該傳感節(jié)點(diǎn)將自身緩存區(qū)內(nèi)的數(shù)據(jù)上傳給匯集節(jié)點(diǎn),執(zhí)行節(jié)點(diǎn)根據(jù)匯集節(jié)點(diǎn)收到的數(shù)據(jù)做出反應(yīng);每條移動(dòng)路徑L由以下步驟確定(1)計(jì)算經(jīng)過第i個(gè)傳感節(jié)點(diǎn)Si的移動(dòng)路徑的條數(shù)k,即 k = WiXM式中,i = 1,2,……,N ;N為傳感節(jié)點(diǎn)的個(gè)數(shù);M為匯集節(jié)點(diǎn)的個(gè)數(shù)%為傳感節(jié)點(diǎn)Si 對(duì)應(yīng)的權(quán)重,且0 < Wi < 1 ;(2)為每條移動(dòng)路徑L分配傳感節(jié)點(diǎn),即將具有相同k值的傳感節(jié)點(diǎn)歸為一組集合,記為集合Sk,此處Sk的下標(biāo)k表示該集合中傳感節(jié)點(diǎn)所對(duì)應(yīng)的k值;同時(shí)根據(jù)k值的大小順序依次執(zhí)行以下步驟(2. 1)當(dāng)k = M時(shí),將集合Sk中Si分配給所有的移動(dòng)路徑Tj ;(2. 2)當(dāng)k = M-I時(shí),將集合Sk中的Si分配給任意的M-I條移動(dòng)路徑Tj ;(2. 3)重復(fù)步驟(2. 2)直到k = 1,此時(shí)將集合Sk中的Si分配給一條移動(dòng)路徑Tj ;(3)對(duì)每條移動(dòng)路徑L均采用蛙跳算法求解最短路徑解,即(3. 1)初始化,設(shè)定每條移動(dòng)路徑Tj的可行解子集合的數(shù)量m以及每個(gè)可行解集合內(nèi)的可行解個(gè)數(shù)n,則每條移動(dòng)路徑L的所有可行解總數(shù)F = mXn ;(3. 2)隨機(jī)生成每條移動(dòng)路徑η的F個(gè)可行解組成的初始群體,并設(shè)每個(gè)移動(dòng)路徑可行解U= (U1, U2,……,凡),其中仏,隊(duì),……,Un分別代表該移動(dòng)路徑可行解所依次經(jīng)過的傳感節(jié)點(diǎn)的編號(hào);(3. 3)計(jì)算上述各個(gè)移動(dòng)路徑可行解的適應(yīng)度,該移動(dòng)路徑可行解的適應(yīng)度等于該移動(dòng)路徑長(zhǎng)度的倒數(shù);(3. 4)將上述移動(dòng)路徑可行解按適應(yīng)值大小進(jìn)行降序排列,并將適應(yīng)度最大的移動(dòng)路徑可行解記錄為初始的全局最好解Px;同時(shí),按以下分配規(guī)則將上述各個(gè)移動(dòng)路徑可行解分配到m個(gè)子集合Yk中,每個(gè)子集合Yk中包含η個(gè)移動(dòng)路徑可行解;分配規(guī)則Yk = {x(p), f(p) Ix(P) = X[q+mX (P-I) ],f (P) = f[q+mX (p_l)]} 式中,P = 1,2,……,n;q= 1,2,……,m ;Χ (ρ)表示子集合中的第ρ個(gè)移動(dòng)路徑可行解,f(p)表示第P個(gè)移動(dòng)路徑可行解的適應(yīng)度;(3. 5)執(zhí)行局部搜索,對(duì)初始的全局最好解Px進(jìn)行更新,具體過程如下 (3. 5. 1)在每個(gè)子集合Yk內(nèi)找到適應(yīng)度最大的移動(dòng)路徑可行解即局部最優(yōu)解Pb,以及適應(yīng)度最小的移動(dòng)路徑可行解即局部最差解Pw ;(3. 5. 2)按以下公式對(duì)每個(gè)子集合Yk中的局部最差解Pw進(jìn)行更新, Pq = Pw+S'①S,min Unt [rand (Pb-Pw) ],SmaJ,Pb-Pw 彡 0 ② S,= max Unt [rand (Pb-Pw) ],-smax},Pb-Pw < 0 ③式中,Pq表示更新后的最差解;S ‘表示移動(dòng)路徑可行解的調(diào)整矢量;Smax表示移動(dòng)路徑可行解允許改變的最大步長(zhǎng),其值由系統(tǒng)預(yù)置;rand表示隨機(jī)量,其值由計(jì)算機(jī)隨機(jī)生成或者有系統(tǒng)預(yù)置,取值范圍在(0,1]之間;(3. 6)在每個(gè)子集合Yk都進(jìn)行過一輪更新之后,將各個(gè)子集合Yk進(jìn)行混合,并將更新后的移動(dòng)路徑可行解按適應(yīng)值大小進(jìn)行降序排列,并將適應(yīng)度最大的移動(dòng)路徑可行解記錄為更新后的全局最好解Px;(3. 7)判斷是否滿足算法收斂條件,若滿足,輸出更新后的全局最好解&作為最優(yōu)路徑序列;否則,返回到步驟(3. 4)再次更新全局最好解Px。
2.根據(jù)權(quán)利要求1所述的一種無線傳感器與執(zhí)行器網(wǎng)絡(luò)的最短延時(shí)路由方法,其特征在于步驟(3. 7)所述算法收斂條件為①在最近的K次全局思想交流過程之后,全局最好解沒有得到明顯的改進(jìn);或②算法預(yù)先定義的函數(shù)評(píng)價(jià)次數(shù)已經(jīng)達(dá)到。
3.根據(jù)權(quán)利要求1或2所述的一種無線傳感器與執(zhí)行器網(wǎng)絡(luò)的最短延時(shí)路由方法,其特征在于所述傳感節(jié)點(diǎn)的個(gè)數(shù)N大于匯集節(jié)點(diǎn)的個(gè)數(shù)M。
4.根據(jù)權(quán)利要求1所述的一種無線傳感器與執(zhí)行器網(wǎng)絡(luò)的最短延時(shí)路由方法,其特征在于所述傳感節(jié)點(diǎn)的個(gè)數(shù)N的取值范圍為1 < N < 10000 ;匯集節(jié)點(diǎn)的個(gè)數(shù)M的取值范圍為 1 < M < 1000。
5.一種無線傳感器與執(zhí)行器網(wǎng)絡(luò),包括分散部署在目標(biāo)區(qū)域內(nèi)的多個(gè)傳感節(jié)點(diǎn)、匯集節(jié)點(diǎn)和執(zhí)行節(jié)點(diǎn),其特征在于所有的匯集節(jié)點(diǎn)均是移動(dòng)的;這些匯集節(jié)點(diǎn)在整個(gè)網(wǎng)絡(luò)內(nèi)移動(dòng),且每個(gè)匯集節(jié)點(diǎn)的移動(dòng)路徑Tj都是相互獨(dú)立的;當(dāng)匯集節(jié)點(diǎn)接近某個(gè)傳感節(jié)點(diǎn)時(shí),該傳感節(jié)點(diǎn)將自身緩存區(qū)內(nèi)的數(shù)據(jù)上傳給匯集節(jié)點(diǎn),執(zhí)行節(jié)點(diǎn)根據(jù)匯集節(jié)點(diǎn)收到的數(shù)據(jù)做出相應(yīng)的反應(yīng);每個(gè)傳感節(jié)點(diǎn)均被預(yù)設(shè)了不同的權(quán)重Wi,其中0 < Wi < 1,該權(quán)重的大小由該傳感節(jié)點(diǎn)所在區(qū)域事件發(fā)生的頻率以及檢測(cè)事件類型的重要性決定,權(quán)重越大,經(jīng)過該傳感節(jié)點(diǎn)的移動(dòng)路徑η越多。
6.根據(jù)權(quán)利要求5所述的一種無線傳感器與執(zhí)行器網(wǎng)絡(luò),其特征在于所述傳感節(jié)點(diǎn)的個(gè)數(shù)N大于匯集節(jié)點(diǎn)的個(gè)數(shù)Μ。
7.根據(jù)權(quán)利要求6所述的一種無線傳感器與執(zhí)行器網(wǎng)絡(luò),其特征在于所述傳感節(jié)點(diǎn)的個(gè)數(shù)N的取值范圍為1 < N < 10000 ;匯集節(jié)點(diǎn)的個(gè)數(shù)M的取值范圍為1 < M < 1000。
全文摘要
本發(fā)明公開一種無線傳感器與執(zhí)行器網(wǎng)絡(luò)及該網(wǎng)絡(luò)的最短延時(shí)路由方法,該網(wǎng)絡(luò)包括分散部署在目標(biāo)區(qū)域內(nèi)的多個(gè)傳感節(jié)點(diǎn)、多個(gè)匯集節(jié)點(diǎn)和多個(gè)執(zhí)行節(jié)點(diǎn);所有匯集節(jié)點(diǎn)在整個(gè)網(wǎng)絡(luò)內(nèi)移動(dòng),且每個(gè)匯集節(jié)點(diǎn)的移動(dòng)路徑Tj都是相互獨(dú)立的,其移動(dòng)路徑Tj的路由由蛙跳算法進(jìn)行設(shè)計(jì);當(dāng)匯集節(jié)點(diǎn)接近某個(gè)傳感節(jié)點(diǎn)時(shí),該傳感節(jié)點(diǎn)將自身緩存區(qū)內(nèi)的數(shù)據(jù)上傳給匯集節(jié)點(diǎn),執(zhí)行節(jié)點(diǎn)根據(jù)匯集節(jié)點(diǎn)收到的數(shù)據(jù)做出相應(yīng)的反應(yīng);每個(gè)傳感節(jié)點(diǎn)均被預(yù)設(shè)了不同的權(quán)重Wi,該權(quán)重的大小由該傳感節(jié)點(diǎn)所在區(qū)域事件發(fā)生的頻率以及檢測(cè)事件類型的重要性決定,權(quán)重越大,經(jīng)過該傳感節(jié)點(diǎn)的移動(dòng)路徑Tj越多。本發(fā)明其具有冗余傳感節(jié)點(diǎn)數(shù)量少、且通信靈活性和實(shí)時(shí)性強(qiáng)的特點(diǎn)。
文檔編號(hào)H04W84/18GK102300282SQ20111029488
公開日2011年12月28日 申請(qǐng)日期2011年9月27日 優(yōu)先權(quán)日2011年9月27日
發(fā)明者張向利, 樊露 申請(qǐng)人:桂林電子科技大學(xué)