一種dtn網(wǎng)絡(luò)中節(jié)點位置預(yù)測方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,特別涉及一種DTN網(wǎng)絡(luò)中節(jié)點位置預(yù)測方法,用于 在延遲和中斷容忍網(wǎng)絡(luò)、傳感器網(wǎng)絡(luò)、移動自組織網(wǎng)絡(luò)環(huán)境下制定傳輸方案時對節(jié)點位置 進(jìn)行預(yù)測,以及移動通信領(lǐng)域?qū)σ苿优_進(jìn)行位置預(yù)測。
【背景技術(shù)】
[0002] 延遲容忍網(wǎng)絡(luò)(Delay Tolerant Network,DTN)是一種數(shù)據(jù)傳輸中存在很大延遲 或者節(jié)點之間的鏈接經(jīng)常中斷的網(wǎng)絡(luò)環(huán)境,這種環(huán)境中,節(jié)點不斷運(yùn)動,不能保證信息從源 端到目的端存在一條連續(xù)的路徑。如低軌衛(wèi)星通信網(wǎng)絡(luò)、飛行器自組織網(wǎng)絡(luò)、傳感器網(wǎng)絡(luò)、 車輛自組織網(wǎng)絡(luò)(VANET)等。
[0003] 對于DTN網(wǎng)絡(luò)中的信息傳輸而言,由于從源端到目的端不存在一條連續(xù)的路徑,為 找到保證消息成功到達(dá)目的節(jié)點的路由,一般是進(jìn)行洪泛式轉(zhuǎn)發(fā),或基于對中間節(jié)點與目 的節(jié)點相遇概率的估計,來選擇下一跳節(jié)點進(jìn)行存儲轉(zhuǎn)發(fā)。只要能預(yù)測到節(jié)點的將來位置 及其出現(xiàn)概率,則可以大大提高路由策略的效率;此外,在能夠預(yù)測節(jié)點位置或軌跡的情況 下,也將會對DTN網(wǎng)絡(luò)中的服務(wù)質(zhì)量控制策略、信息安全策略等的方案設(shè)計帶來很大方便。 因此,研究DTN網(wǎng)絡(luò)中對節(jié)點位置的預(yù)測具有重要的意義。
[0004] 然而,DTN網(wǎng)絡(luò)中的節(jié)點位置預(yù)測卻不同于傳統(tǒng)移動通信網(wǎng)中的位置預(yù)測問題。在 傳統(tǒng)移動通信網(wǎng)中,源節(jié)點與目的節(jié)點之間一般可以找到一條即時的連續(xù)路徑,位置預(yù)測 服務(wù)節(jié)點可以及時獲取到目標(biāo)節(jié)點當(dāng)前的位置信息,并據(jù)此獲得節(jié)點的運(yùn)動趨勢從而進(jìn)行 位置預(yù)測;但在DTN網(wǎng)絡(luò)中,源節(jié)點與目的節(jié)點之間不存在即時的信息連續(xù)傳輸路徑,傳輸 延遲很大且鏈路經(jīng)常中斷,位置預(yù)測服務(wù)節(jié)點獲得的節(jié)點位置信息常常是過時的、局部的、 不完整的,因而對DTN網(wǎng)絡(luò)中節(jié)點位置的預(yù)測存在很大的挑戰(zhàn)。
[0005] 目前有關(guān)移動通信網(wǎng)中節(jié)點位置或軌跡的預(yù)測方法大多是基于馬爾可夫模型進(jìn) 行預(yù)測,即節(jié)點下一狀態(tài)(位置)只依賴于節(jié)點當(dāng)前的狀態(tài)(位置),節(jié)點將來的狀態(tài)(位置) 預(yù)測可以看作基于馬爾可夫模型的一步或多步預(yù)測。然而,馬爾可夫模型要求已知節(jié)點的 當(dāng)前位置及狀態(tài)轉(zhuǎn)移概率矩陣,且狀態(tài)轉(zhuǎn)移要相對穩(wěn)定,其中,狀態(tài)轉(zhuǎn)移概率通?;趯Υ?量的歷史數(shù)據(jù)進(jìn)行離線統(tǒng)計來獲取。但是DTN網(wǎng)絡(luò)無法滿足即時性要求,不能利用節(jié)點位置 變換的狀態(tài)轉(zhuǎn)移矩陣,來對DTN網(wǎng)絡(luò)中節(jié)點位置進(jìn)行預(yù)測。
[0006] 陶劍峰等提出了一種基于灰色預(yù)測的目標(biāo)跟蹤算法("灰色預(yù)測在跟蹤式卡爾曼 濾波中的應(yīng)用",2007年系統(tǒng)仿真技術(shù)及其應(yīng)用學(xué)術(shù)會議論文集,第9卷986-989頁),該算法 提出對目標(biāo)的當(dāng)前時刻的運(yùn)動狀態(tài)(坐標(biāo)及其速度)估計值進(jìn)行灰色預(yù)測,以該灰色預(yù)測代 替卡爾曼算法中的狀態(tài)轉(zhuǎn)移方程,結(jié)合當(dāng)前時刻觀測到的方位角進(jìn)行擴(kuò)展卡爾曼濾波,得 到當(dāng)前時刻的目標(biāo)的位置。然而,這種方法主要適用于目標(biāo)在機(jī)動運(yùn)動狀態(tài),可以觀測到當(dāng) 前時刻的目標(biāo)方位角的情況。在DTN網(wǎng)絡(luò)中,我們無法得到當(dāng)前時刻的目標(biāo)方位角及坐標(biāo)、 速度等一切運(yùn)動信息,也無法應(yīng)用于DTN環(huán)境下的位置預(yù)測。
[0007] 因此,需要一種能夠?qū)TN網(wǎng)絡(luò)中節(jié)點位置及其連續(xù)運(yùn)動軌跡進(jìn)行預(yù)測的技術(shù)方 案。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的:實現(xiàn)對DTN網(wǎng)絡(luò)中節(jié)點位置及其連續(xù)運(yùn)動軌跡的預(yù)測。
[0009]為了實現(xiàn)上述發(fā)明目的,本發(fā)明提供一種DTN網(wǎng)絡(luò)中節(jié)點位置預(yù)測方法,其特征在 于,包括以下步驟,
[0010] S1:根據(jù)位置服務(wù)節(jié)點上當(dāng)前保存的目標(biāo)節(jié)點的歷史數(shù)據(jù),計算所述目標(biāo)節(jié)點的 方位角序列;
[0011] S2:對所述方位角序列進(jìn)行灰色預(yù)測,得到方位角在下一時刻的灰色預(yù)測值;
[0012] S3:將方位角灰色預(yù)測值作為對應(yīng)時刻的觀測值,并結(jié)合目標(biāo)節(jié)點的運(yùn)動模型,進(jìn) 行卡爾曼濾波,得到所述目標(biāo)節(jié)點在對應(yīng)時刻的位置的卡爾曼估計值;
[0013] S4:根據(jù)卡爾曼位置估計值,構(gòu)造所述目標(biāo)節(jié)點的新的方位角序列后,跳轉(zhuǎn)至S2, 并在得到所需時刻的所述目標(biāo)節(jié)點位置的估計值后,停止迭代。
[0014]根據(jù)一種具體的實施方式,S2包括,
[0015] S21:計算所述方位角序列直到保存數(shù)據(jù)最后時刻的一階累加值序列;
[0016] S22:計算所述一階累加值序列的緊鄰均值序列;
[0017] S23:根據(jù)所述緊鄰均值序列,建立GM(1,1)基本模型方程以及根據(jù)所述累加值序 列,建立GM(1,1)基本模型方程的白化方程,并求解所述白化方程,得到方向角一階累加值 的白化響應(yīng)序列;
[0018] S24:根據(jù)所述白化響應(yīng)序列,得到方位角在下一時刻的一階累加值的灰色預(yù)測 值,對方位角在下一時刻的一階累加值的灰色預(yù)測值進(jìn)行一階累減還原,得到方位角在下 一時刻的灰色預(yù)測值。
[0019]根據(jù)一種具體的實施方式,S3包括,
[0020] S31:將所述目標(biāo)節(jié)點的所述方位角灰色預(yù)測值作為觀測值,建立觀測方程,并利 用所述觀測方程,將所述目標(biāo)節(jié)點的運(yùn)動狀態(tài)方程用矩陣形式表示;
[0021 ] S32:根據(jù)所述目標(biāo)節(jié)點的運(yùn)動狀態(tài)方程,進(jìn)行狀態(tài)預(yù)測和方差預(yù)測;
[0022] S33:根據(jù)所述狀態(tài)預(yù)測與所述方差預(yù)測的結(jié)果,計算增益矩陣;
[0023] S34:根據(jù)所述增益矩陣,分別對所述狀態(tài)預(yù)測與所述方差預(yù)測的結(jié)果,進(jìn)行狀態(tài) 濾波和方差濾波,得到所述目標(biāo)節(jié)點在對應(yīng)時刻的位置的卡爾曼估計值。
[0024]根據(jù)一種具體的實施方式,S4包括,
[0025] S41:根據(jù)所述卡爾曼位置估計值,得到對應(yīng)時刻的方位角計算值;
[0026] S42:比較所述方位角計算值與所述方位角灰色預(yù)測值之差的絕對值與預(yù)測門限 值的大小,判斷所述目標(biāo)節(jié)點是否發(fā)生機(jī)動運(yùn)動;
[0027] S43:若所述方位角計算值與所述方位角灰色預(yù)測值之差的絕對值大于所述預(yù)測 門限值,則所述目標(biāo)節(jié)點發(fā)生機(jī)動運(yùn)動,將所述方位角計算值添加至所述方位角序列末尾, 否則所述方位角序列不變。
[0028] 與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果:
[0029] 本發(fā)明利用灰色理論在歷史信息缺失的情況下,首先對節(jié)點方位角進(jìn)行估計和預(yù) 測,以該方位角灰色預(yù)測值作為當(dāng)前時刻的觀測值,結(jié)合節(jié)點的運(yùn)動模型,并利用卡爾曼濾 波算法進(jìn)行節(jié)點位置估計,再通過迭代遞推,得到所需時刻的目標(biāo)節(jié)點位置。本發(fā)明直接利 用目標(biāo)節(jié)點當(dāng)前保存的歷史數(shù)據(jù),不需要復(fù)雜的趨勢和轉(zhuǎn)移概率計算,可以實現(xiàn)在信息缺 乏情況下對DTN網(wǎng)絡(luò)節(jié)點位置的預(yù)測。
【附圖說明】
[0030]圖1是本發(fā)明的流程不意圖。
【具體實施方式】
[0031] 下面結(jié)合【具體實施方式】對本發(fā)明作進(jìn)一步的詳細(xì)描述。但不應(yīng)將此理解為本發(fā)明 上述主題的范圍僅限于以下的實施例,凡基于本
【發(fā)明內(nèi)容】
所實現(xiàn)的技術(shù)均屬于本發(fā)明的范 圍。
[0032] 本發(fā)明的DTN網(wǎng)絡(luò)中的節(jié)點都處于同一個坐標(biāo)系中,移動節(jié)點具有測量當(dāng)前時間 和自身位置坐標(biāo)并向位置服務(wù)節(jié)點報送的能力,但由于網(wǎng)絡(luò)傳輸?shù)难訒r和鏈路經(jīng)常性的中 斷,這些信息不能即時傳遞到位置服務(wù)節(jié)點,并且發(fā)生丟失,位置服務(wù)節(jié)點處保存的目標(biāo)節(jié) 點位置信息是一些歷史數(shù)據(jù),而且也不完整。
[0033]本發(fā)明的DTN網(wǎng)絡(luò)中節(jié)點位置預(yù)測方法能夠?qū)崿F(xiàn)對DTN網(wǎng)絡(luò)中節(jié)點位置及其連續(xù) 運(yùn)動軌跡的預(yù)測。結(jié)合圖1所示的本發(fā)明的流程示意圖,本發(fā)明的DTN網(wǎng)絡(luò)中節(jié)點位置預(yù)測 方法包括:
[0034] S1:根據(jù)位置服務(wù)節(jié)點上當(dāng)前保存的目標(biāo)節(jié)點的歷史數(shù)據(jù),計算目標(biāo)節(jié)點的方位 角序列。其中,假定在位置服務(wù)節(jié)點上當(dāng)前保存有若干個時刻的目標(biāo)節(jié)點的位置信息,并且 目標(biāo)節(jié)點的坐標(biāo)為(y(k),x(k)),k為1,2,......n,用于表示各個時刻的時間順序, 根據(jù)目標(biāo)節(jié)點的坐標(biāo),在對應(yīng)時刻目標(biāo)節(jié)點的方位角為:
[0036] 根據(jù)公式(1)得到時刻1,2,.......時刻的方位角序列,設(shè)為?⑷二㈧*3 (1) ^⑵,...^(n)},其中位置服務(wù)節(jié)點上當(dāng)前保存歷史數(shù)據(jù)的最后時刻為n。
[0037] S2:對方位角序列進(jìn)行灰色預(yù)測,得到方位角在下一時刻的灰色預(yù)測值。具體的, S2包括:
[0038] S21:計算方位角序列直到保存數(shù)據(jù)最后時刻的一階累加值序列。其中,一階累加 值序列為
[0039] S22:計算一階累加值序列的緊鄰均值序列。其中,緊鄰均值序列為zULlVUhz1 并且,
[0040] S23:根據(jù)所述緊鄰均值序列,建立GM(1,1)基本模型方程以及根據(jù)所述累加值序 列,建立GM(1,1)基本模型方程的白化方程,并求解所述白化方程,得到方向角一階累加值 的白化響應(yīng)序列。
[0041 ] 其中,GM(1,1)