一種多路徑多通訊手段路由規(guī)劃方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信網(wǎng)絡(luò)中的路徑規(guī)劃領(lǐng)域,尤其是在包含多種通訊手段并且節(jié)點(diǎn)鏈 接關(guān)系復(fù)雜的網(wǎng)絡(luò)圖中,可以使用本方法找出節(jié)點(diǎn)不相關(guān)、通訊手段之間互不干涉且權(quán)值 較優(yōu)的路徑。
【背景技術(shù)】
[0002] 傳統(tǒng)的深度優(yōu)先搜索算法是搜索算法的一種,它以樹(shù)的深度為第一優(yōu)先級(jí)遍歷樹(shù) 的所有節(jié)點(diǎn),盡可能的探索樹(shù)的所有分支。對(duì)于一個(gè)圖來(lái)說(shuō),深度優(yōu)先搜索算法僅僅可以做 到遍歷圖中的節(jié)點(diǎn),并不能直接用于點(diǎn)對(duì)點(diǎn)的多路徑搜索。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明要解決的問(wèn)題就是如何在一個(gè)結(jié)構(gòu)復(fù)雜且通訊手段多種多樣的網(wǎng)絡(luò)環(huán)境 中,為每個(gè)節(jié)點(diǎn)之間找到一條或幾條合理的路由,建立信息發(fā)送的路由表。為解決上述問(wèn) 題,我們基于傳統(tǒng)的圖論中的基于深度優(yōu)先的全路徑搜索算法,結(jié)合通信網(wǎng)絡(luò)的實(shí)際需求, 做出了相應(yīng)的改進(jìn),并且在此基礎(chǔ)上,對(duì)路徑的后續(xù)篩選做了一些特性化的改變。本發(fā)明可 以計(jì)算通信網(wǎng)中節(jié)點(diǎn)不相關(guān)、權(quán)值較優(yōu)且長(zhǎng)度較小的路由,為網(wǎng)絡(luò)中路由表的建立,信息發(fā) 送路由的篩選提供參考依據(jù),并且最大化的利用了通信網(wǎng)絡(luò)的資源。
[0004] 本發(fā)明通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn):
[0005] -種多路徑多通訊手段路由規(guī)劃方法,包括以下步驟:
[0006] (1)根據(jù)通訊手段的種類對(duì)網(wǎng)絡(luò)圖中節(jié)點(diǎn)之間的連接關(guān)系進(jìn)行編碼得到節(jié)點(diǎn)間的 鄰接矩陣;所述的網(wǎng)絡(luò)圖是通過(guò)通訊網(wǎng)絡(luò)抽象出來(lái)的;
[0007] (2)將網(wǎng)絡(luò)圖中所有與源節(jié)點(diǎn)連接的邊都標(biāo)記上不同的數(shù)字標(biāo)識(shí);
[0008] (3)基于鄰接矩陣進(jìn)行全路徑搜索得到源節(jié)點(diǎn)和目的節(jié)點(diǎn)間的所有路徑;
[0009] (4)根據(jù)數(shù)字標(biāo)識(shí)去除源節(jié)點(diǎn)和目的節(jié)點(diǎn)間所有路徑的節(jié)點(diǎn)相關(guān)性,得到去除節(jié) 點(diǎn)相關(guān)性的所有路徑;
[0010] (5)根據(jù)通訊手段的種類對(duì)去除節(jié)點(diǎn)相關(guān)性的所有路徑進(jìn)行全排列,得到節(jié)點(diǎn)相 同通訊手段不同的所有路徑;
[0011] (6)根據(jù)通訊手段的限制條件對(duì)節(jié)點(diǎn)相同通訊手段不同的所有路徑進(jìn)行篩選;
[0012] 完成多路徑多通訊手段的路由規(guī)劃。
[0013] 其中,所述的步驟(1)具體包括以下步驟:
[0014] (101)確定通訊手段的種類,將通訊手段種類的個(gè)數(shù)作為編碼的編碼主體,編碼主 體的每一位對(duì)應(yīng)一種通訊手段;其中,編碼包括編碼主體和占位;
[0015] (102)用得到的編碼來(lái)表示網(wǎng)絡(luò)圖中節(jié)點(diǎn)之間的連接關(guān)系后,得到節(jié)點(diǎn)間的鄰接 矩陣。
[0016] 其中,所述的步驟(4)具體包括以下步驟:
[0017] (401)將所有的路徑按照數(shù)字標(biāo)識(shí)來(lái)進(jìn)行分組后選出一條最短的路徑作為當(dāng)前基 準(zhǔn)路徑并存儲(chǔ),在所有路徑中將這一組的路徑去除得到當(dāng)前路徑集合;
[0018] (402)對(duì)當(dāng)前路徑集合去除其他組內(nèi)包含當(dāng)前基準(zhǔn)路徑的中間節(jié)點(diǎn)的路徑,得到 下一路徑集合;其中,其他組為不包括當(dāng)前基準(zhǔn)路徑所在組的分組;
[0019] (403)判斷下一路徑集合中的分組個(gè)數(shù)是否為一個(gè),如果是,則該分組為最后一 組,挑選出該組的最短路徑并存儲(chǔ),執(zhí)行步驟
[0020] (404);如果不是,則在下一路徑集合中挑選一條最短路徑,將該最短路徑作為下 一基準(zhǔn)路徑并存儲(chǔ),將該組的所有路徑去除,得到第三路徑集合;將第三路徑集合作為當(dāng)前 路徑集合,將下一基準(zhǔn)路徑作為當(dāng)前基準(zhǔn)路徑,執(zhí)行步驟(402);
[0021] (404)將所有存儲(chǔ)的基準(zhǔn)路徑和最后一組的最短路徑進(jìn)行整理得到去除節(jié)點(diǎn)相關(guān) 性的所有路徑。
[0022] 本發(fā)明相比【背景技術(shù)】的優(yōu)點(diǎn)在于:
[0023] 1.本發(fā)明可以找到節(jié)點(diǎn)相同,通訊手段不同的路徑。
[0024] 2.本發(fā)明可以最大化的利用網(wǎng)絡(luò)中的節(jié)點(diǎn)資源。
[0025] 3.本發(fā)明最后所得的路徑做到了最大的互不相關(guān)性,不僅包括節(jié)點(diǎn)之間的不相 關(guān),還包括節(jié)點(diǎn)間通訊方式的互不相關(guān)性。
[0026] 4.本發(fā)明可以根據(jù)通訊方式的限制條件自由的選取符合條件的路徑。
【附圖說(shuō)明】
[0027] 圖1是現(xiàn)有技術(shù)中普通的4節(jié)點(diǎn)無(wú)向圖;
[0028] 圖2是現(xiàn)有技術(shù)中描述圖1連接關(guān)系的鄰接矩陣;
[0029] 圖3是本發(fā)明的4節(jié)點(diǎn)且節(jié)點(diǎn)之間具有不同通訊方式的無(wú)向圖;
[0030] 圖4是本發(fā)明的描述圖3連接關(guān)系的鄰接矩陣。
【具體實(shí)施方式】
[0031] 下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明做進(jìn)一步詳細(xì)的說(shuō)明。
[0032] 一種多路徑多通訊手段路由規(guī)劃方法,包括以下步驟:
[0033] (1)根據(jù)通訊手段的種類對(duì)網(wǎng)絡(luò)圖中的節(jié)點(diǎn)之間的連接關(guān)系進(jìn)行編碼得到節(jié)點(diǎn)間 的鄰接矩陣,所述的網(wǎng)絡(luò)圖是通過(guò)通訊網(wǎng)絡(luò)抽象出來(lái)的;
[0034] 圖論中的鄰接矩陣是表示網(wǎng)絡(luò)中各節(jié)點(diǎn)之間連接關(guān)系的數(shù)學(xué)表達(dá)式,是計(jì)算路由 表的基礎(chǔ),根據(jù)需要,鄰接矩陣可以有不同的表達(dá)方式,可根據(jù)矩陣中各元素的取值進(jìn)行分 類。如圖1所示,以一個(gè)4個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò)圖為例:
[0035] 我們以一個(gè)4X4的矩陣來(lái)表示圖中的節(jié)點(diǎn)的連接關(guān)系,鄰接矩陣Adj如圖2所示。 在圖2的矩陣中,第一行的元素(a^,j = l,2,3,4)表示節(jié)點(diǎn)1與其他節(jié)點(diǎn)間的連接關(guān)系,如果 沒(méi)有與其他節(jié)點(diǎn)相連,則aij的值為0,如果有連接關(guān)系,則aij的值為1,如果僅考慮節(jié)點(diǎn)間的 連接關(guān)系,不考慮鏈路代價(jià),則矩陣中僅需"Γ、"〇"兩種狀態(tài)表示鏈路的"通"、"斷"。但是在 復(fù)雜的網(wǎng)絡(luò)環(huán)境中,每個(gè)節(jié)點(diǎn)之間的不僅有連接關(guān)系,還有不同的通訊手段,因此我們需要 改進(jìn)傳統(tǒng)的二維鄰接矩陣。
[0036] 首先我們要確定通訊手段的種類,將通訊手段種類的個(gè)數(shù)作為編碼的編碼主體, 編碼主體的每一位對(duì)應(yīng)一種通訊手段;其中,編碼包括編碼主體和占位。如圖3所示是一個(gè) 四節(jié)點(diǎn)的并且包含多種通訊手段的網(wǎng)絡(luò)圖,在圖3中,相鄰節(jié)點(diǎn)之間共有衛(wèi)星、流余、短波和 散射四種通訊方式,此時(shí)圖2中的鄰接矩陣就無(wú)法描述圖3節(jié)點(diǎn)之間的通訊手段,因此我們 要對(duì)矩陣中的元素進(jìn)行重新編碼,具體編碼過(guò)程如下:
[0037] 將圖2中的表示為一個(gè)5位的整數(shù),但是它的取值在數(shù)學(xué)意義上不再是整數(shù),而 是固定比特長(zhǎng)度的編碼,除去最高位,每一位代表對(duì)應(yīng)的通訊手段,例如:a 12=lllll表示1 號(hào)節(jié)點(diǎn)之間和2號(hào)節(jié)點(diǎn)之間通過(guò)4種通訊方式相連,其5比特的編碼規(guī)