導(dǎo)航方法和導(dǎo)航服務(wù)器的制造方法
【專利摘要】本發(fā)明提出一種導(dǎo)航方法和導(dǎo)航服務(wù)器,其中該方法包括以下步驟:導(dǎo)航服務(wù)器獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于1的正整數(shù);導(dǎo)航服務(wù)器獲取第N層路網(wǎng)數(shù)據(jù),其中,N大于1且小于M;導(dǎo)航服務(wù)器根據(jù)第N-1層路網(wǎng)數(shù)據(jù)對第N層路網(wǎng)數(shù)據(jù)進行更新;導(dǎo)航服務(wù)器根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至M層路網(wǎng)數(shù)據(jù)完成更新;以及導(dǎo)航服務(wù)器根據(jù)完成更新之后的M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。根據(jù)本發(fā)明實施例方法,一方面可以節(jié)省數(shù)據(jù)供應(yīng)商制作路網(wǎng)數(shù)據(jù)的成本,提高路網(wǎng)數(shù)據(jù)的更新頻率,另一方面導(dǎo)航服務(wù)器根據(jù)更新后的路網(wǎng)數(shù)據(jù)規(guī)劃路徑時更加合理,提高了用戶體驗。
【專利說明】導(dǎo)航方法和導(dǎo)航服務(wù)器
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及導(dǎo)航【技術(shù)領(lǐng)域】,尤其涉及一種導(dǎo)航方法和導(dǎo)航服務(wù)器。
【背景技術(shù)】
[0002]目前,導(dǎo)航類產(chǎn)品在對用戶進行導(dǎo)航時,主要依賴數(shù)據(jù)提供商提供的路網(wǎng)數(shù)據(jù)規(guī)劃路徑,例如,如圖1 (a)所示,由于在高層路網(wǎng)數(shù)據(jù)(例如高速路)中從西安市到蘭州市在圓圈I內(nèi)所示的路徑并不連通,如果導(dǎo)航規(guī)劃西安市到蘭州市的路徑,規(guī)劃出來的路徑如箭頭2所示的粗實線條路徑,明顯繞了個大C狀路線,更合理的規(guī)劃路徑是如圖1 (b)中所示在低層路網(wǎng)數(shù)據(jù)中箭頭3所示的粗虛線條路徑。
[0003]目前存在的問題是,一方面數(shù)據(jù)提供商提供的分層路網(wǎng)數(shù)據(jù)往往不能處處合理,導(dǎo)致導(dǎo)航規(guī)劃出來的長距離路徑存在繞路問題,另一方面導(dǎo)航規(guī)劃路徑嚴(yán)重依賴數(shù)據(jù)提供商提供的路網(wǎng)數(shù)據(jù),數(shù)據(jù)提供商通常是結(jié)合道路屬性通過人工方式制作路網(wǎng)數(shù)據(jù),制作成本非常高,同時數(shù)據(jù)更新頻率非常低,用戶體驗差。
【發(fā)明內(nèi)容】
[0004]本發(fā)明旨在至少解決上述技術(shù)問題之一。
[0005]為此,本發(fā)明的第一個目的在于提出一種導(dǎo)航方法,該方法一方面可以節(jié)省數(shù)據(jù)供應(yīng)商制作路網(wǎng)數(shù)據(jù)的成本,提高路網(wǎng)數(shù)據(jù)的更新頻率,另一方面導(dǎo)航服務(wù)器根據(jù)更新后的路網(wǎng)數(shù)據(jù)規(guī)劃路徑時更加合理,提高了用戶體驗。
[0006]本發(fā)明的第二個目的在于提出一種導(dǎo)航服務(wù)器。
[0007]為了實現(xiàn)上述目的,本發(fā)明第一方面實施例的導(dǎo)航方法包括以下步驟:a、導(dǎo)航服務(wù)器獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于I的正整數(shù);b、所述導(dǎo)航服務(wù)器獲取第N層路網(wǎng)數(shù)據(jù),其中,N大于I且小于M ;c、所述導(dǎo)航服務(wù)器根據(jù)第N-1層路網(wǎng)數(shù)據(jù)對所述第N層路網(wǎng)數(shù)據(jù)進行更新;d、所述導(dǎo)航服務(wù)器根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對所述第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至所述M層路網(wǎng)數(shù)據(jù)完成更新;以及e、所述導(dǎo)航服務(wù)器根據(jù)完成更新之后的所述M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。
[0008]根據(jù)本發(fā)明實施例的導(dǎo)航方法,通過低一層的路網(wǎng)數(shù)據(jù)對高一層的路網(wǎng)數(shù)據(jù)逐層進行更新,一方面可以節(jié)省數(shù)據(jù)供應(yīng)商制作路網(wǎng)數(shù)據(jù)的成本,提高路網(wǎng)數(shù)據(jù)的更新頻率,另一方面導(dǎo)航服務(wù)器根據(jù)更新后的路網(wǎng)數(shù)據(jù)規(guī)劃路徑時更加合理,提高了用戶體驗。
[0009]為了實現(xiàn)上述目的,本發(fā)明第二方面實施例的導(dǎo)航服務(wù)器,包括:第一獲取模塊,用于獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于I的正整數(shù);第二獲取模塊,用于獲取第N層路網(wǎng)數(shù)據(jù),其中,N大于I且小于M ;更新模塊,用于根據(jù)第N-1層路網(wǎng)數(shù)據(jù)對所述第N層路網(wǎng)數(shù)據(jù)進行更新,并根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對所述第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至所述M層路網(wǎng)數(shù)據(jù)完成更新;以及導(dǎo)航模塊,用于根據(jù)完成更新之后的所述M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。
[0010]根據(jù)本發(fā)明實施例的導(dǎo)航服務(wù)器,通過低一層的路網(wǎng)數(shù)據(jù)對高一層的路網(wǎng)數(shù)據(jù)逐層進行更新,一方面可以節(jié)省數(shù)據(jù)供應(yīng)商制作路網(wǎng)數(shù)據(jù)的成本,提高路網(wǎng)數(shù)據(jù)的更新頻率,另一方面導(dǎo)航服務(wù)器根據(jù)更新后的路網(wǎng)數(shù)據(jù)規(guī)劃路徑時更加合理,提高了用戶體驗。
[0011]本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發(fā)明的實踐了解到。
【專利附圖】
【附圖說明】
[0012]本發(fā)明上述的和/或附加的方面和優(yōu)點從下面結(jié)合附圖對實施例的描述中將變得明顯和容易理解,其中,
[0013]圖1 (a)、(b)為現(xiàn)有技術(shù)的導(dǎo)航規(guī)劃路徑的示意圖;
[0014]圖2是根據(jù)本發(fā)明一個實施例的導(dǎo)航方法的流程圖;
[0015]圖3是根據(jù)本發(fā)明一個具體實施例的導(dǎo)航方法的流程圖;
[0016]圖4是根據(jù)本發(fā)明一個具體實施例的導(dǎo)航服務(wù)器使用低一層的路網(wǎng)數(shù)據(jù)更新高一層的路網(wǎng)數(shù)據(jù)的示意圖;
[0017]圖5是根據(jù)本發(fā)明一個實施例的導(dǎo)航服務(wù)器的結(jié)構(gòu)示意圖;
[0018]圖6是根據(jù)本發(fā)明一個實施例的更新模塊300的結(jié)構(gòu)示意圖;以及
[0019]圖7是根據(jù)本發(fā)明一個實施例的更新單元330的結(jié)構(gòu)示意圖。
【具體實施方式】
[0020]下面詳細描述本發(fā)明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對本發(fā)明的限制。相反,本發(fā)明的實施例包括落入所附加權(quán)利要求書的精神和內(nèi)涵范圍內(nèi)的所有變化、修改和等同物。
[0021]在本發(fā)明的描述中,需要理解的是,術(shù)語“第一”、“第二”等僅用于描述目的,而不能理解為指示或暗示相對重要性。在本發(fā)明的描述中,需要說明的是,除非另有明確的規(guī)定和限定,術(shù)語“相連”、“連接”應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連。對于本領(lǐng)域的普通技術(shù)人員而言,可以具體情況理解上述術(shù)語在本發(fā)明中的具體含義。此外,在本發(fā)明的描述中,除非另有說明,“多個”的含義是兩個或兩個以上。
[0022]流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用于實現(xiàn)特定邏輯功能或過程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實施方式的范圍包括另外的實現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時的方式或按相反的順序,來執(zhí)行功能,這應(yīng)被本發(fā)明的實施例所屬【技術(shù)領(lǐng)域】的技術(shù)人員所理解。
[0023]下面參考附圖描述根據(jù)本發(fā)明實施例的導(dǎo)航方法和導(dǎo)航服務(wù)器。
[0024]為了使導(dǎo)航規(guī)劃路徑更加合理,可以有以下兩種解決方法,一種方法是數(shù)據(jù)提供商通過實時且實地調(diào)查需要制作路網(wǎng)數(shù)據(jù)的區(qū)域中的所有地點,將低層路網(wǎng)數(shù)據(jù)中更加合理的路網(wǎng)數(shù)據(jù)提升到高層路網(wǎng)數(shù)據(jù)中,但這種方法成本過高并且周期過長。另一種方法是導(dǎo)航規(guī)劃路徑時不使用高層路網(wǎng)數(shù)據(jù),只使用低層路網(wǎng)數(shù)據(jù)來規(guī)劃路徑,但這種方法會引起規(guī)劃路徑效率急劇降低,并且如果是在線導(dǎo)航,則需要幾百倍的服務(wù)器資源,造成服務(wù)器負擔(dān)過重;如果是離線導(dǎo)航,這種方法則完全不適用。為此,本發(fā)明提出了一種導(dǎo)航方法,包括以下步驟:a、導(dǎo)航服務(wù)器獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于I的正整數(shù);b、導(dǎo)航服務(wù)器獲取第N層路網(wǎng)數(shù)據(jù),其中,N大于I且小于M ;c、導(dǎo)航服務(wù)器根據(jù)第N-1層路網(wǎng)數(shù)據(jù)對第N層路網(wǎng)數(shù)據(jù)進行更新;d、導(dǎo)航服務(wù)器根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至M層路網(wǎng)數(shù)據(jù)完成更新;以及e、導(dǎo)航服務(wù)器根據(jù)完成更新之后的M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。
[0025]圖2是根據(jù)本發(fā)明一個實施例的導(dǎo)航方法的流程圖。
[0026]如圖2所示,導(dǎo)航方法包括:
[0027]201,導(dǎo)航服務(wù)器獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于I的正整數(shù)。
[0028]具體地,導(dǎo)航服務(wù)器例如可以獲取路網(wǎng)數(shù)據(jù)提供商提供的M層路網(wǎng)數(shù)據(jù)。
[0029]202,導(dǎo)航服務(wù)器獲取第N層路網(wǎng)數(shù)據(jù),其中,N為大于等于I且小于M的正整數(shù)。
[0030]例如,數(shù)據(jù)提供商提供的地圖中的路網(wǎng)數(shù)據(jù)有5層,即M等于5,導(dǎo)航服務(wù)器獲取5層路網(wǎng)數(shù)據(jù)的其中一層的路網(wǎng)數(shù)據(jù),例如,導(dǎo)航服務(wù)器獲取第2層路網(wǎng)數(shù)據(jù)。
[0031]203,導(dǎo)航服務(wù)器根據(jù)第N-1層路網(wǎng)數(shù)據(jù)對第N層路網(wǎng)數(shù)據(jù)進行更新。
[0032]例如,導(dǎo)航服務(wù)器獲取第2層路網(wǎng)數(shù)據(jù)后,根據(jù)第I層路網(wǎng)數(shù)據(jù)對第2層路網(wǎng)數(shù)據(jù)進行更新。
[0033]204,導(dǎo)航服務(wù)器根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至M層路網(wǎng)數(shù)據(jù)完成更新。
[0034]例如,導(dǎo)航服務(wù)器更新完第2層路網(wǎng)數(shù)據(jù)后,根據(jù)更新之后的第2層路網(wǎng)數(shù)據(jù)對第3層路網(wǎng)數(shù)據(jù)進行更新,然后導(dǎo)航服務(wù)器再根據(jù)更新之后的第3層路網(wǎng)數(shù)據(jù)對第4層路網(wǎng)數(shù)據(jù)進行更新,由此繼續(xù)更新更高層的路網(wǎng)數(shù)據(jù),直至第M層路網(wǎng)數(shù)據(jù)更新完成。
[0035]205,導(dǎo)航服務(wù)器根據(jù)完成更新之后的M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。
[0036]在本發(fā)明的一個實施例中,導(dǎo)航服務(wù)器更新路網(wǎng)數(shù)據(jù)和導(dǎo)航服務(wù)器規(guī)劃路徑可以同步運行。
[0037]根據(jù)本發(fā)明實施例的導(dǎo)航方法,通過低一層的路網(wǎng)數(shù)據(jù)對高一層的路網(wǎng)數(shù)據(jù)逐層進行更新,一方面可以節(jié)省數(shù)據(jù)供應(yīng)商制作路網(wǎng)數(shù)據(jù)的成本,提高路網(wǎng)數(shù)據(jù)的更新頻率,另一方面導(dǎo)航服務(wù)器根據(jù)更新后的路網(wǎng)數(shù)據(jù)規(guī)劃路徑時更加合理,提高了用戶體驗。
[0038]圖3是根據(jù)本發(fā)明一個具體實施例的導(dǎo)航方法的流程圖。
[0039]導(dǎo)航服務(wù)器通過計算低一層的路網(wǎng)數(shù)據(jù)(例如第N-1層路網(wǎng)數(shù)據(jù))中節(jié)點之間的最優(yōu)路徑更新高一層的路網(wǎng)數(shù)據(jù)(例如第N層路網(wǎng)數(shù)據(jù)),具體的更新過程如圖3所示的本發(fā)明提出的一個具體實施例,導(dǎo)航方法包括:
[0040]301,導(dǎo)航服務(wù)器獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于I的正整數(shù)。
[0041]具體地,導(dǎo)航服務(wù)器例如可以獲取路網(wǎng)數(shù)據(jù)提供商提供的M層路網(wǎng)數(shù)據(jù)。
[0042]302,導(dǎo)航服務(wù)器獲取第N層路網(wǎng)數(shù)據(jù),其中,其中,N為大于等于I且小于M的正整數(shù)。
[0043]例如,數(shù)據(jù)提供商提供的地圖中的路網(wǎng)數(shù)據(jù)有5層,即M等于5,導(dǎo)航服務(wù)器獲取5層路網(wǎng)數(shù)據(jù)的其中一層的路網(wǎng)數(shù)據(jù),例如,導(dǎo)航服務(wù)器獲取第2層路網(wǎng)數(shù)據(jù)。
[0044]303,導(dǎo)航服務(wù)器獲取第N層路網(wǎng)數(shù)據(jù)中的多個第N層節(jié)點。
[0045]304,導(dǎo)航服務(wù)器根據(jù)第N-1層路網(wǎng)數(shù)據(jù)獲取第N層路網(wǎng)數(shù)據(jù)中每兩個第N層節(jié)點之間的最優(yōu)路徑。
[0046]其中,路網(wǎng)數(shù)據(jù)包括多個節(jié)點和兩個節(jié)點之間的鏈路,節(jié)點可以是地圖中的地點,例如城市、景點等,鏈路是連接兩個節(jié)點的路徑。一般來說,低一層(例如第N-1層)的路網(wǎng)數(shù)據(jù)比高一層(例如第N層)的路網(wǎng)數(shù)據(jù)更加完整,低一層路網(wǎng)數(shù)據(jù)包括高一層的路網(wǎng)數(shù)據(jù),即高一層的路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目少于低一層的路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目,例如第3層路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目少于第2層路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目,第4層路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目少于第3層路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目等。
[0047]在本發(fā)明的一個實施例中,導(dǎo)航服務(wù)器根據(jù)最優(yōu)路徑算法dijskra算法獲取最優(yōu)路徑。應(yīng)當(dāng)理解,本發(fā)明中使用的最優(yōu)路徑算法包括不局限于dijskra算法,還可以使用其它不同的最優(yōu)路徑算法。
[0048]具體地,導(dǎo)航服務(wù)器根據(jù)低一層的路網(wǎng)數(shù)據(jù)(例如第N-1層路網(wǎng)數(shù)據(jù))根據(jù)dijskra算法可以計算出高一層的路網(wǎng)數(shù)據(jù)(例如第N層路網(wǎng)數(shù)據(jù))中的每兩個節(jié)點之間行駛時間最少的路徑,例如,導(dǎo)航服務(wù)器通過計算兩個節(jié)點之間的行駛路程除以行駛速度可以得出兩個節(jié)點之間的行駛時間,將行駛時間最少的路徑作為兩個節(jié)點之間的最優(yōu)路徑。
[0049]在本發(fā)明的一個實施例,導(dǎo)航服務(wù)器根據(jù)最優(yōu)路徑更新第N層路網(wǎng)數(shù)據(jù)。具體地,導(dǎo)航服務(wù)器計算出第N層路網(wǎng)數(shù)據(jù)中每兩個節(jié)點之間的最優(yōu)路徑后,根據(jù)最優(yōu)路徑對第N層路網(wǎng)數(shù)據(jù)進行更新,更新方法如305和306所示:
[0050]305,導(dǎo)航服務(wù)器判斷最優(yōu)路徑經(jīng)過的第N-1層節(jié)點和/或鏈路是否為第N層節(jié)點和/或鏈路。
[0051]306,如果最優(yōu)路徑經(jīng)過的第N-1層節(jié)點和/或鏈路不為第N層節(jié)點和/或鏈路,則導(dǎo)航服務(wù)器將對應(yīng)的第N-1層節(jié)點和/或鏈路提升至N層路網(wǎng)數(shù)據(jù)中。
[0052]307,導(dǎo)航服務(wù)器根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至M層路網(wǎng)數(shù)據(jù)完成更新。
[0053]具體地,依照303-306的方法,導(dǎo)航服務(wù)器更新例如第2層路網(wǎng)數(shù)據(jù)完成后,根據(jù)更新之后的第2層路網(wǎng)數(shù)據(jù)對第3層路網(wǎng)數(shù)據(jù)進行更新,導(dǎo)航服務(wù)器再根據(jù)更新之后的第3層路網(wǎng)數(shù)據(jù)對第4層路網(wǎng)數(shù)據(jù)進行更新,由此繼續(xù)更新更高層的路網(wǎng)數(shù)據(jù),直至第M層路網(wǎng)數(shù)據(jù)更新完成。
[0054]其中,導(dǎo)航服務(wù)器更新路網(wǎng)數(shù)據(jù)的操作可以集中在一段時間內(nèi)一次性完成,由于一次性完成需要耗費導(dǎo)航服務(wù)器較大的資源,導(dǎo)航服務(wù)器還可以逐步更新路網(wǎng)數(shù)據(jù),例如導(dǎo)航服務(wù)器在使用低一層的路網(wǎng)數(shù)據(jù)規(guī)劃路徑時,如果規(guī)劃出的路徑中包含高層路網(wǎng)數(shù)據(jù)中的節(jié)點,則導(dǎo)航服務(wù)器將規(guī)劃路徑中高一層的路網(wǎng)數(shù)據(jù)中沒有的節(jié)點和節(jié)點之間的鏈路保存到高一層路網(wǎng)數(shù)據(jù)中。
[0055]308,導(dǎo)航服務(wù)器根據(jù)完成更新之后的M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。
[0056]在本發(fā)明的一個實施例中,導(dǎo)航服務(wù)器可以參照實時路況服務(wù)提供的實時路況信息,根據(jù)實時路況信息中兩個節(jié)點之間的不同行駛速度計算得出不同的行駛時間,將行駛時間最短的節(jié)點之間的鏈路作為最優(yōu)路徑,由此,根據(jù)實時路況信息給導(dǎo)航服務(wù)器提供動態(tài)的更加合理的路徑以使導(dǎo)航服務(wù)器對用戶進行導(dǎo)航。
[0057]根據(jù)本發(fā)明實施例的導(dǎo)航方法,導(dǎo)航服務(wù)器通過獲取低一層的路網(wǎng)數(shù)據(jù)中每兩個節(jié)點之間的最優(yōu)路徑,在最優(yōu)路徑經(jīng)過的節(jié)點和/或鏈路不存在于高一層的路網(wǎng)數(shù)據(jù)中時,將節(jié)點和/或鏈路提升到高一層的路網(wǎng)數(shù)據(jù)中,可以實現(xiàn)通過低一層的路網(wǎng)數(shù)據(jù)對高一層的路網(wǎng)數(shù)據(jù)逐層進行更新。
[0058]下面舉一個具體的例子說明本發(fā)明實施例的導(dǎo)航方法中導(dǎo)航服務(wù)器通過低一層的路網(wǎng)數(shù)據(jù)(例如第N-1層路網(wǎng)數(shù)據(jù))對高一層的路網(wǎng)數(shù)據(jù)(例如第N層路網(wǎng)數(shù)據(jù))的具體方法。通過具體示例的描述,本發(fā)明的方面和優(yōu)點將變得更加明顯。
[0059]圖4是根據(jù)本發(fā)明一個具體實施例的導(dǎo)航服務(wù)器使用低一層的路網(wǎng)數(shù)據(jù)(例如第N-1層路網(wǎng)數(shù)據(jù))更新高一層的路網(wǎng)數(shù)據(jù)(例如第N層路網(wǎng)數(shù)據(jù))的示意圖。
[0060]如圖4所示,導(dǎo)航服務(wù)器從M層路網(wǎng)數(shù)據(jù)中獲取其中兩層的路網(wǎng)數(shù)據(jù),分別為第N-1層路網(wǎng)數(shù)據(jù)和第N層路網(wǎng)數(shù)據(jù),第N-1層路網(wǎng)數(shù)據(jù)中包含全部的24個第N-1層節(jié)點和每兩個第N-1層節(jié)點之間的第N-1層鏈路;第N層路網(wǎng)數(shù)據(jù)包含13個第N層節(jié)點(第N層節(jié)點1、6、8、10、11、12、14、15、18、21、22、23和第N層節(jié)點24)和每兩個第N層節(jié)點之間的第N層鏈路。其中,粗鏈路I表示行駛速度較高的鏈路,例如高速公路,城市快速路等,細鏈路2表示行駛速度較低的鏈路,例如郊區(qū)公路,鄉(xiāng)村公路等,鏈路I和鏈路2上的數(shù)字表示兩個節(jié)點之間的鏈路長度。
[0061]假設(shè)鏈路I的行駛速度為5,鏈路2的行駛速度為2,導(dǎo)航服務(wù)器使用第N層路網(wǎng)數(shù)據(jù)計算第N層節(jié)點I到第N層節(jié)點21的最優(yōu)路徑時,根據(jù)第N層節(jié)點之間的鏈路長度除以第N層節(jié)點之間的行駛速度可以得出兩個第N層節(jié)點之間行駛時間,例如,從第N層節(jié)點I到第N層節(jié)點12的行駛時間為第N層節(jié)點I和第N層節(jié)點12之間的鏈路長度240除以第N層節(jié)點I和第N層節(jié)點12之間的行駛速度5得出的48。導(dǎo)航服務(wù)器通過計算得出從第N層節(jié)點I到第N層節(jié)點12到第N層節(jié)點22到第N層節(jié)點23到第N層節(jié)點24到第N層節(jié)點21的行駛時間168 (240/5+300/5+120/5+100/5+80/5=168)為最短行駛時間,由此,導(dǎo)航服務(wù)器將從第N層節(jié)點I到第N層節(jié)點12到第N層節(jié)點22到第N層節(jié)點23到第N層節(jié)點24到第N層節(jié)點21作為從第N層節(jié)點I到第N層節(jié)點21的最優(yōu)路徑。顯然,存在繞路問題。
[0062]為了計算出更合理的路線,導(dǎo)航服務(wù)器根據(jù)第N-1層路網(wǎng)數(shù)據(jù)計算第N層路網(wǎng)數(shù)據(jù)中的每兩個第N層節(jié)點(第N層節(jié)點1、6、8、10、11、12、14、15、18、21、22、23和第N層節(jié)點24)之間的最優(yōu)路徑,例如,在第N-1層路網(wǎng)數(shù)據(jù)中第N層節(jié)點I和第N層節(jié)點21之間的路徑可以為從第N-1層節(jié)點I到第N-1層節(jié)點6到第N-1層節(jié)點10到第N-1層節(jié)點16到第N-1層節(jié)點18到第N-1層節(jié)點21,或者可以為從第N-1層節(jié)點I到第N-1層節(jié)點5到第N-1層節(jié)點9到第N-1層節(jié)點14到第N-1層節(jié)點15到第N-1層節(jié)點18到第N-1層節(jié)點21,或者可以為從第N-1層節(jié)點I到第N-1層節(jié)點5到第N-1層節(jié)點9到第N-1層節(jié)點13到第N-1層節(jié)點19到第N-1層節(jié)點20到第N-1層節(jié)點24到第N-1層節(jié)點21等。
[0063]導(dǎo)航服務(wù)器通過計算得出從第N-1層節(jié)點I到第N-1層節(jié)點6到第N-1層節(jié)點10到第N-1層節(jié)點16到第N-1層節(jié)點18到第N-1層節(jié)點21的行駛時間30(60/5+30/5+2/2+2/2+50/5=30)為最短行駛時間,由此,導(dǎo)航服務(wù)器將從第N-1層節(jié)點I到第N-1層節(jié)點6到第N-1層節(jié)點10到第N-1層節(jié)點16到第N-1層節(jié)點18到第N-1層節(jié)點21作為從第N層節(jié)點I到第N層節(jié)點21的更合理的最優(yōu)路徑。
[0064]導(dǎo)航服務(wù)器再將第N-1層節(jié)點16和第N-1層節(jié)點10到第N_1層節(jié)點16的鏈路以及第N-1層節(jié)點16到第N-1層節(jié)點18的鏈路(圖4中箭頭標(biāo)識部分所示)作為提升路網(wǎng)數(shù)據(jù)保存到第N層路網(wǎng)數(shù)據(jù)中,以使導(dǎo)航服務(wù)器根據(jù)到第N層路網(wǎng)數(shù)據(jù)可以計算出更合理的最優(yōu)路徑。
[0065]應(yīng)當(dāng)理解,圖4所述的第N-1層路網(wǎng)數(shù)據(jù)和第N層路網(wǎng)數(shù)據(jù)僅為舉例說明本發(fā)明的導(dǎo)航服務(wù)器使用低一層的路網(wǎng)數(shù)據(jù)(例如第N-1層路網(wǎng)數(shù)據(jù))更新高一層的路網(wǎng)數(shù)據(jù)(例如第N層路網(wǎng)數(shù)據(jù)),并不是對本發(fā)明范圍的限制。
[0066]為了實現(xiàn)上述實施例,本發(fā)明還提出一種導(dǎo)航服務(wù)器。
[0067]一種導(dǎo)航服務(wù)器,包括:第一獲取模塊,用于獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于I的正整數(shù);第二獲取模塊,用于獲取第N層路網(wǎng)數(shù)據(jù),其中,N為大于等于I且小于M的正整數(shù);更新模塊,用于根據(jù)第N-1層路網(wǎng)數(shù)據(jù)對第N層路網(wǎng)數(shù)據(jù)進行更新,并根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至M層路網(wǎng)數(shù)據(jù)完成更新;以及導(dǎo)航模塊,用于根據(jù)完成更新之后的M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。
[0068]圖5是根據(jù)本發(fā)明一個實施例的導(dǎo)航服務(wù)器的結(jié)構(gòu)示意圖。
[0069]如圖5所示,導(dǎo)航服務(wù)器包括:第一獲取模塊100、第二獲取模塊200、更新模塊300和導(dǎo)航模塊400。
[0070]具體地,第一獲取模塊100用于獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于I的正整數(shù)。更具體地,第一獲取模塊100例如可以獲取路網(wǎng)數(shù)據(jù)提供商提供的M層路網(wǎng)數(shù)據(jù)。
[0071]第二獲取模塊200用于獲取第N層路網(wǎng)數(shù)據(jù),其中,N為大于等于I且小于M的正整數(shù)。例如,數(shù)據(jù)提供商提供的地圖中的路網(wǎng)數(shù)據(jù)有5層,即M等于5,第二獲取模塊200獲取5層路網(wǎng)數(shù)據(jù)的其中一層的路網(wǎng)數(shù)據(jù),例如,第二獲取模塊200獲取第2層路網(wǎng)數(shù)據(jù)。
[0072]更新模塊300用于根據(jù)第N-1層路網(wǎng)數(shù)據(jù)對第N層路網(wǎng)數(shù)據(jù)進行更新,并根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至M層路網(wǎng)數(shù)據(jù)完成更新。例如,第二獲取模塊200獲取第2層路網(wǎng)數(shù)據(jù)后,更新模塊300根據(jù)第I層路網(wǎng)數(shù)據(jù)對第2層路網(wǎng)數(shù)據(jù)進行更新,然后更新模塊300根據(jù)更新之后的第2層路網(wǎng)數(shù)據(jù)對第3層路網(wǎng)數(shù)據(jù)進行更新,然后更新模塊300再根據(jù)更新之后的第3層路網(wǎng)數(shù)據(jù)對第4層路網(wǎng)數(shù)據(jù)進行更新,由此繼續(xù)更新更高層的路網(wǎng)數(shù)據(jù),直至第M層路網(wǎng)數(shù)據(jù)更新完成。
[0073]導(dǎo)航模塊400用于根據(jù)完成更新之后的M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。
[0074]在本發(fā)明的一個實施例中,更新模塊300更新路網(wǎng)數(shù)據(jù)和導(dǎo)航模塊400規(guī)劃路徑可以同步運行。
[0075]根據(jù)本發(fā)明實施例的導(dǎo)航服務(wù)器,通過低一層的路網(wǎng)數(shù)據(jù)對高一層的路網(wǎng)數(shù)據(jù)逐層進行更新,一方面可以節(jié)省數(shù)據(jù)供應(yīng)商制作路網(wǎng)數(shù)據(jù)的成本,提高路網(wǎng)數(shù)據(jù)的更新頻率,另一方面導(dǎo)航服務(wù)器根據(jù)更新后的路網(wǎng)數(shù)據(jù)規(guī)劃路徑時更加合理,提高了用戶體驗。
[0076]圖6是根據(jù)本發(fā)明一個實施例的更新模塊300的結(jié)構(gòu)示意圖。
[0077]如圖6所示,更新模塊300包括:第一獲取單元310、第二獲取單元320和更新單元 330。
[0078]具體地,第一獲取單元310用于獲取第N層路網(wǎng)數(shù)據(jù)中的多個第N層節(jié)點。
[0079]第二獲取單元320用于根據(jù)第N-1層路網(wǎng)數(shù)據(jù)獲取第N層路網(wǎng)數(shù)據(jù)中每兩個第N層節(jié)點之間的最優(yōu)路徑。其中,路網(wǎng)數(shù)據(jù)包括多個節(jié)點和兩個節(jié)點之間的鏈路,節(jié)點可以是地圖中的地點,例如城市、景點等,鏈路是連接兩個節(jié)點的路徑。一般來說,低一層的路網(wǎng)數(shù)據(jù)比高一層的路網(wǎng)數(shù)據(jù)更加完整,低一層路網(wǎng)數(shù)據(jù)包括高一層的路網(wǎng)數(shù)據(jù),即高一層的路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目少于低一層的路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目,例如第3層路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目少于第2層路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目,第4層路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目少于第3層路網(wǎng)數(shù)據(jù)中的節(jié)點數(shù)目等。
[0080]在本發(fā)明的一個實施例中,導(dǎo)航服務(wù)器根據(jù)最優(yōu)路徑算法dijskra算法獲取最優(yōu)路徑。應(yīng)當(dāng)理解,本發(fā)明中使用的最優(yōu)路徑算法包括不局限于dijskra算法,還可以使用其它不同的最優(yōu)路徑算法。具體地,第二獲取單元320根據(jù)低一層的路網(wǎng)數(shù)據(jù)(例如第N-1層路網(wǎng)數(shù)據(jù))根據(jù)dijskra算法可以計算出高一層的路網(wǎng)數(shù)據(jù)(例如第N層路網(wǎng)數(shù)據(jù))中的每兩個節(jié)點之間行駛時間最少的路徑,例如,第二獲取單元320通過計算兩個節(jié)點之間的行駛路程除以行駛速度可以得出兩個節(jié)點之間的行駛時間,將行駛時間最少的路徑作為兩個節(jié)點之間的最優(yōu)路徑。
[0081]更新單元330用于根據(jù)最優(yōu)路徑更新第N層路網(wǎng)數(shù)據(jù)。
[0082]根據(jù)本發(fā)明實施例的導(dǎo)航服務(wù)器,通過獲取第N層路網(wǎng)數(shù)據(jù)中的多個第N層節(jié)點,并計算多個第N層節(jié)點之間的最優(yōu)路徑,導(dǎo)航服務(wù)器可以根據(jù)最優(yōu)路徑更新路網(wǎng)數(shù)據(jù)。
[0083]在本發(fā)明的一個實施例中,第二獲取單元320可以參照實時路況服務(wù)提供的實時路況信息,根據(jù)實時路況信息中兩個節(jié)點之間的不同行駛速度計算得出不同的行駛時間,將行駛時間最短的節(jié)點之間的鏈路作為最優(yōu)路徑,由此,根據(jù)實時路況信息給第二獲取單元320提供動態(tài)的更加合理的路徑以使導(dǎo)航模塊400對用戶進行導(dǎo)航。
[0084]圖7是根據(jù)本發(fā)明一個實施例的更新單元330的結(jié)構(gòu)示意圖。
[0085]如圖7所示,更新單元包括:判斷子單元331和提升子單元332。
[0086]具體地,判斷子單元331用于判斷最優(yōu)路徑經(jīng)過的第N-1層節(jié)點和/或鏈路是否為第N層節(jié)點和/或鏈路。
[0087]提升子單元332用于在判斷子單元判斷最優(yōu)路徑經(jīng)過的第N-1層節(jié)點和/或鏈路不為第N層節(jié)點和/或鏈路時,將對應(yīng)的第N-1層節(jié)點和/或鏈路提升至第N層路網(wǎng)數(shù)據(jù)中。
[0088]根據(jù)本發(fā)明實施例的導(dǎo)航服務(wù)器,通過在最優(yōu)路徑經(jīng)過的節(jié)點和/或鏈路不存在于高一層的路網(wǎng)數(shù)據(jù)(例如第N層路網(wǎng)數(shù)據(jù))中時,將節(jié)點和/或鏈路提升到高一層的路網(wǎng)數(shù)據(jù)中,可以實現(xiàn)通過低一層的路網(wǎng)數(shù)據(jù)對高一層的路網(wǎng)數(shù)據(jù)逐層進行更新。
[0089]在本發(fā)明的一個實施例中,更新模塊300更新路網(wǎng)數(shù)據(jù)的操作可以集中在一段時間內(nèi)一次性完成,由于一次性完成需要耗費導(dǎo)航服務(wù)器較大的資源,更新模塊300還可以逐步更新路網(wǎng)數(shù)據(jù),例如導(dǎo)航模塊400在使用低一層的路網(wǎng)數(shù)據(jù)規(guī)劃路徑時,如果規(guī)劃出的路徑中包含高層路網(wǎng)數(shù)據(jù)中的節(jié)點,則提升子單元332將規(guī)劃路徑中高一層的路網(wǎng)數(shù)據(jù)中沒有的節(jié)點和節(jié)點間的鏈路保存到高一層路網(wǎng)數(shù)據(jù)中。
[0090]應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來實現(xiàn)。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實現(xiàn)。例如,如果用硬件來實現(xiàn),和在另一實施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項或他們的組合來實現(xiàn):具有用于對數(shù)據(jù)信號實現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現(xiàn)場可編程門陣列(FPGA)等。
[0091]在本說明書的描述中,參考術(shù)語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術(shù)語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結(jié)合。
[0092]盡管已經(jīng)示出和描述了本發(fā)明的實施例,本領(lǐng)域的普通技術(shù)人員可以理解:在不脫離本發(fā)明的原理和宗旨的情況下可以對這些實施例進行多種變化、修改、替換和變型,本發(fā)明的范圍由權(quán)利要求及其等同物限定。
【權(quán)利要求】
1.一種導(dǎo)航方法,其特征在于,包括以下步驟: a、導(dǎo)航服務(wù)器獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于I的正整數(shù); b、所述導(dǎo)航服務(wù)器獲取第N層路網(wǎng)數(shù)據(jù),其中,N大于I且小于M; C、所述導(dǎo)航服務(wù)器根據(jù)第N-1層路網(wǎng)數(shù)據(jù)對所述第N層路網(wǎng)數(shù)據(jù)進行更新; d、所述導(dǎo)航服務(wù)器根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對所述第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至所述M層路網(wǎng)數(shù)據(jù)完成更新;以及 e、所述導(dǎo)航服務(wù)器根據(jù)完成更新之后的所述M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟c進一步包括: Cl、所述導(dǎo)航服務(wù)器獲取所述第N層路網(wǎng)數(shù)據(jù)中的多個第N層節(jié)點; c2、所述導(dǎo)航服務(wù)器根據(jù)所述第N-1層路網(wǎng)數(shù)據(jù)獲取所述第N層路網(wǎng)數(shù)據(jù)中每兩個所述第N層節(jié)點之間的最優(yōu)路徑;以及 c3、所述導(dǎo)航服務(wù)器根據(jù)所述最優(yōu)路徑更新所述第N層路網(wǎng)數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述步驟c3進一步包括: 所述導(dǎo)航服務(wù)器判斷所述最優(yōu)路徑經(jīng)過的所述第N-1層節(jié)點和/或鏈路是否為所述第N層節(jié)點和/或鏈路;以及 如果所述最優(yōu)路徑經(jīng)過的所述第N-1層節(jié)點和/或鏈路不為所述第N層節(jié)點和/或鏈路,則所述導(dǎo)航服務(wù)器將對應(yīng)的所述第N-1層節(jié)點和/或鏈路提升至所述N層路網(wǎng)數(shù)據(jù)中。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述導(dǎo)航服務(wù)器根據(jù)最優(yōu)路徑算法dijskra算法獲取所述最優(yōu)路徑。
5.一種導(dǎo)航服務(wù)器,其特征在于,包括: 第一獲取模塊,用于獲取M層路網(wǎng)數(shù)據(jù),其中,M為大于I的正整數(shù); 第二獲取模塊,用于獲取第N層路網(wǎng)數(shù)據(jù),其中,N為大于等于I且小于M的正整數(shù);更新模塊,用于根據(jù)第N-1層路網(wǎng)數(shù)據(jù)對所述第N層路網(wǎng)數(shù)據(jù)進行更新,并根據(jù)更新之后的第N層路網(wǎng)數(shù)據(jù)對所述第N+1層路網(wǎng)數(shù)據(jù)進行更新,直至所述M層路網(wǎng)數(shù)據(jù)完成更新;以及 導(dǎo)航模塊,用于根據(jù)完成更新之后的所述M層路網(wǎng)數(shù)據(jù)對用戶進行導(dǎo)航。
6.根據(jù)權(quán)利要求5所述的導(dǎo)航服務(wù)器,其特征在于,所述更新模塊包括: 第一獲取單元,用于獲取所述第N層路網(wǎng)數(shù)據(jù)中的多個第N層節(jié)點; 第二獲取單元,用于根據(jù)所述第N-1層路網(wǎng)數(shù)據(jù)獲取所述第N層路網(wǎng)數(shù)據(jù)中每兩個所述第N層節(jié)點之間的最優(yōu)路徑;以及 更新單元,用于根據(jù)所述最優(yōu)路徑更新所述第N層路網(wǎng)數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的導(dǎo)航服務(wù)器,其特征在于,所述更新單元包括: 判斷子單元,用于判斷所述最優(yōu)路徑經(jīng)過的所述第N-1層節(jié)點和/或鏈路是否為所述第N層節(jié)點和/或鏈路;以及 提升子單元,用于在所述判斷子單元判斷所述最優(yōu)路徑經(jīng)過的所述第N-1層節(jié)點和/或鏈路不為所述第N層節(jié)點和/或鏈路時,將對應(yīng)的所述第N-1層節(jié)點和/或鏈路提升至所述第N層路網(wǎng)數(shù)據(jù)中。
8.根據(jù)權(quán)利要求6所述的導(dǎo)航服務(wù)器,其特征在于,所述第二獲取單元根據(jù)最優(yōu)路徑算法dijskra算法獲取所述最優(yōu)路徑。
【文檔編號】G01C21/34GK104075721SQ201310105222
【公開日】2014年10月1日 申請日期:2013年3月28日 優(yōu)先權(quán)日:2013年3月28日
【發(fā)明者】張樹斌 申請人:北京百度網(wǎng)訊科技有限公司