WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik-SAAP算法
【專利摘要】本發(fā)明公開了一種WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik?SAAP算法,包括以下步驟:1)建立執(zhí)行器協(xié)作的任務(wù)分配的數(shù)學(xué)模型;2)初始化網(wǎng)絡(luò)參數(shù);3)選取決策節(jié)點,發(fā)起競拍節(jié)點;4)設(shè)定跳步數(shù);5)計算競拍節(jié)點的效用值,并回傳到?jīng)Q策節(jié)點;6)判斷決策節(jié)點是否滿足最佳執(zhí)行器節(jié)點的條件,若不滿足,則返回步驟4),若滿足,一次任務(wù)分配結(jié)束;7)被選中的執(zhí)行器節(jié)點執(zhí)行當(dāng)前任務(wù);8)將Ik?SAAP算法執(zhí)行200次,仿真得到數(shù)據(jù)包轉(zhuǎn)發(fā)個數(shù)對比圖,剩余能量方差對比圖,平均任務(wù)完成時間對比圖。本方法在保證任務(wù)分配率高的前提下,能夠減少執(zhí)行器節(jié)點數(shù)據(jù)包轉(zhuǎn)發(fā)的數(shù)量,縮短任務(wù)完成時間,均衡WSAN網(wǎng)絡(luò)能耗。
【專利說明】
WSAN中任務(wù)分配的改進(jìn)分布式競拍I k-SAAP算法
技術(shù)領(lǐng)域
[0001] 本發(fā)明涉及分布式信息處理技術(shù)、協(xié)同合作技術(shù)、智能計算技術(shù)領(lǐng)域,具體講是 WSAN中執(zhí)行器和執(zhí)行器協(xié)作中的任務(wù)分配問題,屬于無線傳感網(wǎng)技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 無線傳感器執(zhí)行器網(wǎng)絡(luò)(Wireless Sensor And Actor Networks,WSAN)是由大量 的傳感器節(jié)點和少量移動的執(zhí)行器節(jié)點組成,它們通過無線網(wǎng)絡(luò)互聯(lián),用于感知現(xiàn)實世界, 處理感知數(shù)據(jù),并在事件發(fā)生時進(jìn)行決策和行動。其中協(xié)作性和實時性是WSAN應(yīng)該滿足的 兩個獨特要求,其中執(zhí)行器和執(zhí)行器之間協(xié)作(Actor to Actor Coordination)的主要目 的是完成任務(wù)的有效分配。無線信道傳輸數(shù)據(jù)會消耗大量能量,因此當(dāng)WSAN中有任務(wù)發(fā)生 時,選擇合適的執(zhí)行器節(jié)點可以減少通信能耗,提高響應(yīng)速度,對保證網(wǎng)絡(luò)的實時性和能量 的均衡性,延長網(wǎng)絡(luò)壽命有重要的意義。
[0003] 針對WSAN中的任務(wù)分配問題,前人已經(jīng)提出一些方案,主要分為集中式和分布式 算法。集中式算法是指由一個中心節(jié)點收集所有節(jié)點的信息然后進(jìn)行決策,此方案的優(yōu)點 是可以選出最優(yōu)的執(zhí)行器節(jié)點,但是,該方法通信開銷大,時延長,錯誤率高。
[0004]分布式解決方案是利用局部節(jié)點信息來進(jìn)行決策,產(chǎn)生數(shù)據(jù)包的數(shù)量降低,整個 網(wǎng)絡(luò)的穩(wěn)定性提高。To_aso Melodia等人提出了分布式競拍算法來解決執(zhí)行器節(jié)點之間 的協(xié)作問題,但該算法僅適用于重疊區(qū)域的執(zhí)行器節(jié)點,非重疊區(qū)域內(nèi)的執(zhí)行器節(jié)點會在 執(zhí)行已有任務(wù)后才會對重疊區(qū)域內(nèi)的事件作出響應(yīng),因此必然會對網(wǎng)絡(luò)的實時性造成影 口向。Ivan Mezei等人提出了k-SAAP(k-hop Simple Auction Aggregation Protocol)算法, k-SAAP通過構(gòu)造一棵響應(yīng)樹來獲得局部k跳鄰居的信息,從而決定由哪個執(zhí)行器節(jié)點執(zhí)行 當(dāng)前的任務(wù),這種算法沒有考慮執(zhí)行器節(jié)點的狀態(tài),會使執(zhí)行器節(jié)點之間轉(zhuǎn)發(fā)數(shù)據(jù)包的個 數(shù)增多,執(zhí)行器節(jié)點之間負(fù)載不均衡,網(wǎng)絡(luò)壽命縮短。通過對算法的改進(jìn)可以在保證實時性 基礎(chǔ)上減少數(shù)據(jù)包轉(zhuǎn)發(fā)個數(shù),提高任務(wù)分配率,降低通信開銷,均勻網(wǎng)絡(luò)的能耗。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明所要解決的技術(shù)問題是提供一種WSAN中執(zhí)行器之間協(xié)作的任務(wù)分配算法, 在保證實時性基礎(chǔ)上減少數(shù)據(jù)包轉(zhuǎn)發(fā)個數(shù),提高任務(wù)分配率,降低通信開銷,均勻網(wǎng)絡(luò)的能 耗。
[0006] 為解決上述技術(shù)問題,本發(fā)明提供一種WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik-SAAP算法,包括以下步驟:
[0007] 1)建立執(zhí)行器協(xié)作的任務(wù)分配的數(shù)學(xué)模型;
[0008] 2)初始化網(wǎng)絡(luò)參數(shù);
[0009] 初始化網(wǎng)絡(luò)參數(shù)包括:初始跳步數(shù)k;網(wǎng)絡(luò)范圍、每次任務(wù)分配過程隨機(jī)產(chǎn)生的任 務(wù)數(shù)、執(zhí)行器節(jié)點的個數(shù)、一次任務(wù)分配過程中執(zhí)行器節(jié)點執(zhí)行最大的任務(wù)個數(shù)、執(zhí)行器節(jié) 點通訊半徑、傳感器節(jié)點的通訊半徑;執(zhí)行器節(jié)點的移動速度;
[0010] 3)選取決策節(jié)點;一個執(zhí)行器節(jié)點被選作執(zhí)行器節(jié)點的概率SPi,根據(jù)公式(1)可 計算其概率:
[0011] D = l/di+l/d2+. . .+l/dn
[0012] Pi=l/(D*di) (1)
[0013] 其中cU為執(zhí)行器節(jié)點i離任務(wù)發(fā)生的距離,η為網(wǎng)絡(luò)中執(zhí)行器節(jié)點的個數(shù)。
[0014] 4)生成競拍節(jié)點樹:初始跳步數(shù)k加1,根據(jù)當(dāng)前的跳步數(shù)k限制競拍節(jié)點的數(shù)量;
[0015] 5)計算競拍節(jié)點效用值并回傳,收到任務(wù)信息消息的執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記 為啟動態(tài),計算效用值并將此值返回給自己的父節(jié)點;
[0016] 6)決策節(jié)點決策階段,對返回的效用信息消息進(jìn)行分析比較,選出最佳執(zhí)行器節(jié) 點去執(zhí)行當(dāng)前的任務(wù)。并將決策消息決策信息沿生成樹發(fā)送到每個執(zhí)行器節(jié)點;
[0017] 7)被選中的執(zhí)行器節(jié)點執(zhí)行當(dāng)前任務(wù);
[0018] 8)將Ik-SAAP算法執(zhí)行200次,仿真得到數(shù)據(jù)包轉(zhuǎn)發(fā)個數(shù)對比圖,剩余能量方差對 比圖,平均任務(wù)完成時間對比圖。
[0019] 上述步驟1)中,任務(wù)分配數(shù)學(xué)模型的建立包括以下2個步驟:
[0020] 11)任務(wù)分配問題描述:分配過程中有m個任務(wù),na個執(zhí)行器節(jié)點。每個任務(wù)有自己 的持續(xù)時間4和截止時間山;每個執(zhí)行器節(jié)點有化個可用時隙。保證任務(wù)在截止時間內(nèi)完 成的前提下,一個任務(wù)只能由一個執(zhí)行器節(jié)點完成,且每個時隙內(nèi)只能完成一個任務(wù);
[0021] 12)保證任務(wù)的合理分配要滿足以下約束條件:
[0022]
[0023]
[0024] 爲(wèi)VU (4)
[0025] 其中值為1或0,為1時表示任務(wù)L由執(zhí)行器節(jié)點Μ執(zhí)行。
[0026] 上述步驟11)中,任務(wù)分配問題要滿足以下條件:
[0027] 111)傳感器節(jié)點是靜止的,而執(zhí)行器節(jié)點可以移動且有數(shù)據(jù)計算和分析能力;
[0028] 112)網(wǎng)絡(luò)中所有的傳感器節(jié)點和執(zhí)行器節(jié)點時鐘同步;
[0029] 113)執(zhí)行器節(jié)點可以分為兩類:決策節(jié)點和競拍節(jié)點,這兩種節(jié)點都有四種狀態(tài)。 決策節(jié)點的狀態(tài)劃分為空閑態(tài)、初始態(tài)、等待態(tài)、決策態(tài);競標(biāo)節(jié)點狀態(tài)劃分為:空閑態(tài)、啟 動態(tài)、等待態(tài)、執(zhí)行態(tài);
[0030] 114)研究環(huán)境是以執(zhí)行器節(jié)點為簇頭的分簇網(wǎng)絡(luò)結(jié)構(gòu),當(dāng)監(jiān)測區(qū)域內(nèi)有任務(wù)發(fā)生 時,傳感器節(jié)點會將報告請求發(fā)送給本簇的執(zhí)行器節(jié)點。
[0031] 上述步驟2)中,初始化網(wǎng)絡(luò)參數(shù)為:初始跳步數(shù)k = 0;網(wǎng)絡(luò)區(qū)域為500m*500m的正 方形區(qū)域;每次任務(wù)分配過程隨機(jī)產(chǎn)生40個任務(wù);執(zhí)行器節(jié)點的個數(shù)為10; -次任務(wù)分配過 程中執(zhí)行器節(jié)點執(zhí)行最大的任務(wù)個數(shù)為5;執(zhí)行器節(jié)點的通訊半徑為50m;傳感器節(jié)點的通 訊半徑為l〇m;執(zhí)行器節(jié)點的移動速度為10m/s。
[0032] 上述步驟3)中,決策節(jié)點有兩種狀態(tài):
[0033] 31)未被選中的執(zhí)行器節(jié)點標(biāo)記自身的狀態(tài)為空閑態(tài);
[0034] 32)被選作決策節(jié)點的執(zhí)行器節(jié)點向周圍廣播加入競拍消息,并將自身狀態(tài)標(biāo)記 為初始態(tài)。
[0035] 上述步驟4)中,生成競拍節(jié)點樹包括以下步驟:
[0036] 41)以決策節(jié)點為根節(jié)點生成競拍節(jié)點樹,并將加入競拍消息逐層傳遞給子節(jié)點;
[0037] 42)接收到參加競拍消息的執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為啟動態(tài);
[0038] 43)標(biāo)記為啟動態(tài)的執(zhí)行器節(jié)點,將接收任務(wù)信息消息沿生成樹逐層返回給決策 節(jié)點;
[0039] 44)收到接收任務(wù)信息消息的決策節(jié)點將任務(wù)信息沿生成樹逐層轉(zhuǎn)發(fā)給每個子節(jié) 點,并將自身狀態(tài)信息標(biāo)記為等待態(tài),等待執(zhí)行器節(jié)點效用值的回傳。
[0040] 上述步驟5)中,效用值的計算和回傳包括以下步驟:
[0041] 51)效用函數(shù)的確定,效用函數(shù)需要權(quán)衡執(zhí)行器節(jié)點的剩余能量(Ag)、執(zhí)行器節(jié)點 與事件區(qū)域的距離(山)、執(zhí)行器節(jié)點任務(wù)隊列中任務(wù)的數(shù)量(A sj)、執(zhí)行器節(jié)點的移動速度 (Vj)這四個參數(shù)。根據(jù)公式(5)可計算執(zhí)行器節(jié)點執(zhí)行對應(yīng)任務(wù)的效用值。
[0042] aij = a1vj+a2Aej-a3Asj-a4dij (5)
[0043] 其中參數(shù)ai,i = l ,2,3,4是一個常量并且可以反映出這四個參量在決定競標(biāo)任務(wù) 的標(biāo)價值時的重要程度;
[0044] 52)收到效用信息消息的決策節(jié)點將自身狀態(tài)標(biāo)記為決策態(tài),并將接收效用信息 消息沿生成樹發(fā)送給每個子執(zhí)行器節(jié)點;
[0045] 53)收到接收效用信息消息的執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為等待態(tài),等待決策節(jié) 點的決策消息。
[0046] 上述步驟6)中,決策階段包括以下兩種情況:
[0047] 61)如果競拍節(jié)點樹中有合適的執(zhí)行器節(jié)點,決策節(jié)點將決策信息消息發(fā)送給該 執(zhí)行器節(jié)點;
[0048] 62)如果競拍節(jié)點樹中沒有合適的執(zhí)行器節(jié)點,則返回到步驟5)。
[0049] 上述步驟61)中,競拍節(jié)點樹中的執(zhí)行器節(jié)點有兩種狀態(tài):
[0050] 611)若是最佳執(zhí)行器節(jié)點,則該執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為執(zhí)行態(tài),并將接收 決策信息消息沿生成樹發(fā)送到?jīng)Q策節(jié)點,決策節(jié)點將自身狀態(tài)標(biāo)記為空閑態(tài);
[0051] 612)若不是最佳執(zhí)行器節(jié)點,則該執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為空閑態(tài),并將接 收決策信息消息沿生成樹發(fā)送到?jīng)Q策節(jié)點,決策節(jié)點將自身狀態(tài)標(biāo)記為空閑態(tài)。
[0052]本發(fā)明所達(dá)到的有益效果如下:
[0053] 1.本發(fā)明在k-SAAP算法的基礎(chǔ)上進(jìn)行改進(jìn),與k-SAAP算法相比,在初始建模階段 設(shè)定了每個任務(wù)的持續(xù)時間和截止時間,并將任務(wù)要在截止時間之前完成作為約束條件, 滿足WSAN網(wǎng)絡(luò)對實時性的要求;
[0054] 2.本發(fā)明將逐步增加跳步數(shù)的思想引入到競拍節(jié)點樹的生成階段,在跳步數(shù)逐步 增加的過程中尋找最佳執(zhí)行器節(jié)點執(zhí)行任務(wù),如果找到,則跳步數(shù)不再增加,這種方法降低 了總跳步數(shù),減少了數(shù)據(jù)包轉(zhuǎn)發(fā)的數(shù)量,縮短了網(wǎng)絡(luò)延時,降低了能量消耗;
[0055] 3.本發(fā)明將執(zhí)行器節(jié)點任務(wù)隊列中任務(wù)數(shù)量考慮到?jīng)Q策過程中,并作為效用函數(shù) 的一個維度,這種方法可有效均衡執(zhí)行器節(jié)點之間的負(fù)載及網(wǎng)絡(luò)能耗,延長網(wǎng)絡(luò)壽命。
【附圖說明】
[0056] 圖1 Ik-SAAP算法流程圖;
[0057] 圖2任務(wù)分配率對比圖;
[0058]圖3數(shù)據(jù)包轉(zhuǎn)發(fā)個數(shù)對比圖;
[0059] 圖4執(zhí)行器節(jié)點剩余能量方差對比圖;
[0060] 圖5平均任務(wù)完成時間對比圖。
【具體實施方式】
[0061]下面結(jié)合附圖對本發(fā)明作更進(jìn)一步的說明。
[0062]本發(fā)明的系統(tǒng)框圖如圖1所不。本發(fā)明一種WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik-SAAP算法,包括以下部分:建立任務(wù)分配的數(shù)學(xué)模型;初始化網(wǎng)絡(luò)參數(shù);選取決策節(jié)點;生成 競拍節(jié)點樹;計算競拍節(jié)點效用值并回傳;決策節(jié)點決策;任務(wù)分配結(jié)束,被選中的執(zhí)行器 節(jié)點執(zhí)行當(dāng)前的任務(wù)。
[0063] 步驟1建立執(zhí)行器協(xié)作的任務(wù)分配的數(shù)學(xué)模型;
[0064] 任務(wù)分配數(shù)學(xué)模型的建立包括以下2個步驟:
[0065] 11)任務(wù)分配問題描述:分配過程中有m個任務(wù),~個執(zhí)行器節(jié)點;每個任務(wù)有自己 的持續(xù)時間~和截止時間每個執(zhí)行器節(jié)點有心個可用時隙;保證任務(wù)在截止時間內(nèi)完 成的前提下,一個任務(wù)只能由一個執(zhí)行器節(jié)點完成,且每個時隙內(nèi)只能完成一個任務(wù);
[0066] 12)保證任務(wù)的合理分配要滿足以下約束條件:
[0067]
[0068]
[0069] 4== {0,.!}, yij (8)
[0070] 其中fu值為1或0,為1時表示任務(wù)T油執(zhí)行器節(jié)點Μ執(zhí)行。
[0071] 步驟11)中,任務(wù)分配問題要滿足以下條件:
[0072] 111)傳感器節(jié)點是靜止的,而執(zhí)行器節(jié)點可以移動且有數(shù)據(jù)計算和分析能力;
[0073] 112)網(wǎng)絡(luò)中所有的傳感器節(jié)點和執(zhí)行器節(jié)點時鐘同步;
[0074] 113)執(zhí)行器節(jié)點分為兩類:決策節(jié)點和競拍節(jié)點,這兩種節(jié)點都有四種狀態(tài);
[0075]決策節(jié)點的狀態(tài)劃分為空閑態(tài)、初始態(tài)、等待態(tài)、決策態(tài);
[0076] 競標(biāo)節(jié)點狀態(tài)劃分為:空閑態(tài)、啟動態(tài)、等待態(tài)、執(zhí)行態(tài);
[0077] 114)研究環(huán)境是以執(zhí)行器節(jié)點為簇頭的分簇網(wǎng)絡(luò)結(jié)構(gòu),當(dāng)監(jiān)測區(qū)域內(nèi)有任務(wù)發(fā)生 時,傳感器節(jié)點會將報告請求發(fā)送給本簇的執(zhí)行器節(jié)點。
[0078] 步驟2初始化網(wǎng)絡(luò)參數(shù):其初始化網(wǎng)絡(luò)參數(shù)如表1所示:
[0079]表1仿真實驗參數(shù)
[0080]
[0081] 步驟3選取決策節(jié)點:一個執(zhí)行器節(jié)點被選作執(zhí)行器節(jié)點的概率為Pi,根據(jù)公式 (1)可計算其概率:
[0082] D = l/di+l/d2+. . .+l/dn
[0083] Pi=l/(D*di) (9)
[0084] 其中cU為執(zhí)行器節(jié)點i離任務(wù)發(fā)生的距離,η為網(wǎng)絡(luò)中執(zhí)行器節(jié)點的個數(shù)。
[0085]此時執(zhí)行器節(jié)點有兩類:
[0086] 1)未被選中的執(zhí)行器節(jié)點標(biāo)記自身的狀態(tài)為空閑態(tài);
[0087] 2)被選作決策節(jié)點的執(zhí)行器節(jié)點向周圍廣播加入競拍消息,并將自身狀態(tài)標(biāo)記為 初始態(tài)。
[0088]步驟4生成競拍節(jié)點樹:跳步數(shù)k加1,根據(jù)當(dāng)前的跳步數(shù)k限定競拍節(jié)點的數(shù)量;競 拍節(jié)點樹的生成包括以下步驟:
[0089] 1)以決策節(jié)點為根節(jié)點生成競拍節(jié)點樹,并將加入競拍消息逐層傳遞給子節(jié)點;
[0090] 2)接收到參加競拍消息的執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為啟動態(tài);
[0091] 3)標(biāo)記為啟動態(tài)的執(zhí)行器節(jié)點,將接收任務(wù)信息消息沿生成樹逐層返回給決策節(jié) 占 .
[0092] 4)收到接收任務(wù)信息消息的決策節(jié)點將任務(wù)信息沿生成樹逐層轉(zhuǎn)發(fā)給每個子節(jié) 點,并將自身狀態(tài)信息標(biāo)記為等待態(tài),等待執(zhí)行器節(jié)點效用值的回傳。
[0093]步驟5計算競拍節(jié)點效用值并回傳:收到任務(wù)信息消息的執(zhí)行器節(jié)點將自身狀態(tài) 標(biāo)記為啟動態(tài),計算效用值并將此值返回給自己的父節(jié)點,此過程包括以下三個步驟:
[0094] 1)效用函數(shù)的確定,效用函數(shù)需要權(quán)衡執(zhí)行器節(jié)點的剩余能量(Ag)、執(zhí)行器節(jié)點 與事件區(qū)域的距離(山)、執(zhí)行器節(jié)點任務(wù)隊列中任務(wù)的數(shù)量(Asj)、執(zhí)行器節(jié)點的移動速度 (Vj)這四個參數(shù)。根據(jù)公式(5)可計算執(zhí)行器節(jié)點執(zhí)行對應(yīng)任務(wù)的效用值。
[0095] aij - aiVj+ct2Aej_a3Asj_a4clij (10)
[0096] 其中參數(shù)ai,i = l ,2,3,4是一個常量并且可以反映出這四個參量在決定競標(biāo)任務(wù) 的標(biāo)價值時的重要程度;
[0097] 2)收到效用信息消息的決策節(jié)點將自身狀態(tài)標(biāo)記為決策態(tài),并將接收效用信息消 息沿生成樹發(fā)送給每個子執(zhí)行器節(jié)點;
[0098] 3)收到接收效用信息消息的執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為等待態(tài),等待決策節(jié)點 的決策消息。
[0099] 步驟6決策節(jié)點決策:對返回的效用信息消息進(jìn)行分析比較,選出最佳執(zhí)行器節(jié)點 去執(zhí)行當(dāng)前的任務(wù)。此過程有以下兩種情況:
[0100] 1)如果競拍節(jié)點樹中有合適的執(zhí)行器節(jié)點,決策節(jié)點將決策信息消息發(fā)送給該執(zhí) 行器節(jié)點;此時執(zhí)行器節(jié)點有兩種狀態(tài):
[01 01 ] 11)若是最佳執(zhí)行器節(jié)點,則將自身狀態(tài)標(biāo)記為執(zhí)行態(tài),并將接收決策信息消息沿 生成樹發(fā)送到?jīng)Q策節(jié)點,決策節(jié)點將自身狀態(tài)標(biāo)記為空閑態(tài);
[0102] 12)若不是最佳執(zhí)行器節(jié)點,則將自身狀態(tài)標(biāo)記為空閑態(tài),并將接收決策信息消息 沿生成樹發(fā)送到?jīng)Q策節(jié)點,決策節(jié)點將自身狀態(tài)標(biāo)記為空閑態(tài)。
[0103] 2)如果競拍節(jié)點樹中沒有合適的執(zhí)行器節(jié)點,則返回到步驟5)。
[0104] 步驟7被選中的執(zhí)行器節(jié)點執(zhí)行當(dāng)前任務(wù)。
[0105]步驟8將Ik-SAAP算法執(zhí)行200次,仿真得到數(shù)據(jù)包轉(zhuǎn)發(fā)個數(shù)對比圖,剩余能量方差 對比圖,平均任務(wù)完成時間對比圖。如圖2所示為Ik-SAAP算法和k-SAAP算法的任務(wù)分配率 對比圖;如圖3所示為Ik-SAAP算法和k-SAAP算法的數(shù)據(jù)包轉(zhuǎn)發(fā)個數(shù)對比圖,圖4所示為Ik-SAAP算法和k-SAAP算法的剩余能量方差對比圖,圖5為Ik-SAAP算法和k-SAAP算法的平均任 務(wù)完成時間對比圖。
[0106]比較分析圖2和圖3可以看出,Ik-SAAP算法在保證任務(wù)分配率高的條件下,轉(zhuǎn)發(fā)更 少的數(shù)據(jù)包;從圖4可以看出,Ik-SAAP算法的各執(zhí)行器節(jié)點間的剩余能量方差更小,網(wǎng)絡(luò)能 耗更均勻,網(wǎng)絡(luò)壽命更長;從圖5可以看出,Ik-SAAP算法的平均任務(wù)完成時間更少。綜合分 析可知,此方法在保證任務(wù)分配率高的情況下,減少了數(shù)據(jù)包轉(zhuǎn)發(fā)的數(shù)量,均衡了網(wǎng)絡(luò)能 耗,減少了平均任務(wù)完成時間。
【主權(quán)項】
1. 一種WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik-SAAP算法,其特征在于,包括以下步驟: 1) 建立執(zhí)行器協(xié)作的任務(wù)分配的數(shù)學(xué)模型; 2) 初始化網(wǎng)絡(luò)參數(shù); 初始化網(wǎng)絡(luò)參數(shù)包括:初始跳步數(shù)k;網(wǎng)絡(luò)范圍、每次任務(wù)分配過程隨機(jī)產(chǎn)生的任務(wù)數(shù)、 執(zhí)行器節(jié)點的個數(shù)、一次任務(wù)分配過程中執(zhí)行器節(jié)點執(zhí)行最大的任務(wù)個數(shù)、執(zhí)行器節(jié)點通 訊半徑、傳感器節(jié)點的通訊半徑;執(zhí)行器節(jié)點的移動速度; 3) 選取決策節(jié)點; 一個執(zhí)行器節(jié)點被選作執(zhí)行器節(jié)點的概率為^,根據(jù)公式(1)計算其概率: D= l/di+l/d2+. . .+1/dn Pi = l/(D*di) (I) 其中cU為執(zhí)行器節(jié)點i離任務(wù)發(fā)生的距離,η為網(wǎng)絡(luò)中執(zhí)行器節(jié)點的個數(shù); 4) 生成競拍節(jié)點樹:初始跳步數(shù)k加1,根據(jù)當(dāng)前的跳步數(shù)k限定競拍節(jié)點的數(shù)量; 5) 計算競拍節(jié)點效用值并回傳,收到任務(wù)信息消息的執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為啟 動態(tài),計算效用值并將此值返回給自己的父節(jié)點; 6) 決策節(jié)點決策階段,對返回的效用信息消息進(jìn)行分析比較,選出最佳執(zhí)行器節(jié)點去 執(zhí)行當(dāng)前的任務(wù),并將決策消息沿生成樹發(fā)送到每個執(zhí)行器節(jié)點; 7) 被選中的執(zhí)行器節(jié)點執(zhí)行當(dāng)前任務(wù); 8) 將Ik-SAAP算法執(zhí)行200次,仿真得到數(shù)據(jù)包轉(zhuǎn)發(fā)個數(shù)對比圖,剩余能量方差對比圖, 平均任務(wù)完成時間對比圖。2. 根據(jù)權(quán)利要求1所述的一種WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik-SAAP算法,其特征 在于:在所述步驟1)中,任務(wù)分配數(shù)學(xué)模型的建立包括以下2個步驟: 11) 任務(wù)分配問題描述:分配過程中有m個任務(wù),~個執(zhí)行器節(jié)點;每個任務(wù)有自己的持 續(xù)時間七和截止時間山;每個執(zhí)行器節(jié)點有N 1個可用時隙;保證任務(wù)在截止時間內(nèi)完成的 前提下,一個任務(wù)只能由一個執(zhí)行器節(jié)點完成,且每個時隙內(nèi)只能完成一個任務(wù); 12) 保證任務(wù)的合理分配要滿足以下約束條件:其中fu值為1或〇,為1時表示任務(wù)Tj由執(zhí)行器節(jié)點A1執(zhí)行。3. 根據(jù)權(quán)利要求2所述的一種WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik-SAAP算法,其特征 在于:在所述步驟11)中,任務(wù)分配問題要滿足以下條件: 111) 傳感器節(jié)點是靜止的,而執(zhí)行器節(jié)點可以移動且有數(shù)據(jù)計算和分析能力; 112) 網(wǎng)絡(luò)中所有的傳感器節(jié)點和執(zhí)行器節(jié)點時鐘同步; 113) 執(zhí)行器節(jié)點分為兩類:決策節(jié)點和競拍節(jié)點,這兩種節(jié)點都有四種狀態(tài); 決策節(jié)點的狀態(tài)劃分為空閑態(tài)、初始態(tài)、等待態(tài)、決策態(tài); 克標(biāo)節(jié)點狀態(tài)劃分為:空閑態(tài)、啟動態(tài)、等待態(tài)、執(zhí)彳丁態(tài); 114)研究環(huán)境是以執(zhí)行器節(jié)點為簇頭的分簇網(wǎng)絡(luò)結(jié)構(gòu),當(dāng)監(jiān)測區(qū)域內(nèi)有任務(wù)發(fā)生時, 傳感器節(jié)點會將報告請求發(fā)送給本簇的執(zhí)行器節(jié)點。4. 根據(jù)權(quán)利要求1所述的一種WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik-SAAP算法,其特征 在于:在所述步驟2)中,初始化網(wǎng)絡(luò)參數(shù)為:初始跳步數(shù)k = 0;網(wǎng)絡(luò)區(qū)域為500m*500m的正方 形區(qū)域;每次任務(wù)分配過程隨機(jī)產(chǎn)生40個任務(wù);執(zhí)行器節(jié)點的個數(shù)為10;-次任務(wù)分配過程 中執(zhí)行器節(jié)點執(zhí)行最大的任務(wù)個數(shù)為5;執(zhí)行器節(jié)點的通訊半徑為50m;傳感器節(jié)點的通訊 半徑為l〇m;執(zhí)行器節(jié)點的移動速度為10m/s。5. 根據(jù)權(quán)利要求1所述的一種WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik-SAAP算法,其特征 在于:在所述步驟3)中,決策節(jié)點有兩種狀態(tài): 31) 未被選中的執(zhí)行器節(jié)點標(biāo)記自身的狀態(tài)為空閑態(tài); 32) 被選作決策節(jié)點的執(zhí)行器節(jié)點向周圍廣播加入競拍消息,并將自身狀態(tài)標(biāo)記為初 始態(tài)。6. 根據(jù)權(quán)利要求1所述的一種WSAN中任務(wù)分配的改進(jìn)分布式競拍Ik-SAAP算法,其特征 在于:在所述步驟4)中,生成競拍節(jié)點樹包括以下步驟: 41) 以決策節(jié)點為根節(jié)點生成競拍節(jié)點樹,并將加入競拍消息逐層傳遞給子節(jié)點; 42) 接收到加入競拍消息的執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為啟動態(tài); 43) 標(biāo)記為啟動態(tài)的執(zhí)行器節(jié)點,將接收任務(wù)信息消息沿生成樹逐層返回給決策節(jié)點; 44) 收到接收任務(wù)信息消息的決策節(jié)點將任務(wù)信息沿生成樹逐層轉(zhuǎn)發(fā)給每個子節(jié)點, 并將自身狀態(tài)信息標(biāo)記為等待態(tài),等待執(zhí)行器節(jié)點效用值的回傳。7. 根據(jù)權(quán)利要求1所述的一種WSAN中任務(wù)分配的改進(jìn)分布式競拍算法,其特征在于:在 所述步驟5)中,效用值的計算和回傳包括以下步驟: 51) 效用函數(shù)的確定,效用函數(shù)需要權(quán)衡執(zhí)行器節(jié)點的剩余能量(U、執(zhí)行器節(jié)點與事 件區(qū)域的距離(山)、執(zhí)行器節(jié)點任務(wù)隊列中任務(wù)的數(shù)量(A sj)、執(zhí)行器節(jié)點的移動速度(Vj) 這四個參數(shù);根據(jù)公式(5)計算執(zhí)行器節(jié)點執(zhí)行對應(yīng)任務(wù)的效用值; cLij = QlVj+Q2Aej-Q3Asj-Q4(lij (4) 其中參數(shù)ai,i = I,2,3,4是一個常量并且可以反映出這四個參量在決定競標(biāo)任務(wù)的標(biāo) 價值時的重要程度; 52) 收到效用信息消息的決策節(jié)點將自身狀態(tài)標(biāo)記為決策態(tài),并將接收效用信息消息 沿生成樹發(fā)送給每個子執(zhí)行器節(jié)點; 53) 收到接收效用信息消息的執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為等待態(tài),等待決策節(jié)點的 決策消息。8. 根據(jù)權(quán)利要求1所述的一種WSAN中任務(wù)分配的改進(jìn)分布式競拍算法,其特征在于:在 所述步驟6)中,決策階段包括以下兩種情況: 61) 如果競拍節(jié)點樹中有合適的執(zhí)行器節(jié)點,決策節(jié)點將決策信息消息發(fā)送給該執(zhí)行 器節(jié)點; 62) 如果競拍節(jié)點樹中沒有合適的執(zhí)行器節(jié)點,則返回到步驟5)。9. 根據(jù)權(quán)利要求8所述的一種WSAN中任務(wù)分配的改進(jìn)分布式競拍算法,其特征在于:在 所述步驟61)中,競拍節(jié)點樹中的執(zhí)行器節(jié)點有兩種狀態(tài): 611)若是最佳執(zhí)行器節(jié)點,則該執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為執(zhí)行態(tài),并將接收決策 信息消息沿生成樹發(fā)送到?jīng)Q策節(jié)點,決策節(jié)點將自身狀態(tài)標(biāo)記為空閑態(tài); 612)若不是最佳執(zhí)行器節(jié)點,則該執(zhí)行器節(jié)點將自身狀態(tài)標(biāo)記為空閑態(tài),并將接收決 策信息消息沿生成樹發(fā)送到?jīng)Q策節(jié)點,決策節(jié)點將自身狀態(tài)標(biāo)記為空閑態(tài)。
【文檔編號】H04L29/08GK105933397SQ201610238072
【公開日】2016年9月7日
【申請日】2016年4月15日
【發(fā)明人】苗紅霞, 苗雪嬌, 齊本勝, 蕭旋旋, 韓燕 , 賈瀾, 孫寧
【申請人】河海大學(xué)常州校區(qū)