專利名稱:一種路徑快速規劃方法
技術領域:
本發明涉及導航領域,更具體地說,涉及一種路徑快速規劃方法。
背景技術:
近年來,GPS (Global Positioning System,全球定位系統)的應用越來越普遍,從 GPS獲取自己的位置,再由此規劃到目的地的路徑,極大地方便了人們的日常生活。導航系統需要快速計算出最佳路徑而進行導航,但是現有導航系統大多依靠一些計算處理能力較為有限的硬件,加上導航系統本身都將消耗大部分的系統資源,所以要求路徑規劃的方法必須高效快速。導航路徑的選擇,目前的方法是將交通網絡抽象為一個包含多個節點的拓撲網絡,然后通過最短路徑(包括路程最短和時間最短兩種)算法規劃一條從起點到終點的路徑。傳統的算法,比如Dijkstra算法,以起點為中心,對整個地圖的道路進行擴展式搜索, 直到擴展到終點,才對所有可行的道路進行比較、篩選,最終得出最短的路徑。這種算法由于需要考慮到所有道路的可能性,加上在擴展的時候沒有制定方向,在路網密集的區域或者長距離路徑規劃的情況下,加載的數據量和運算量將會相當驚人,導致規劃時間將很長。 在現實中,最優路徑并不一定就是最短路徑,最優路徑的選擇往往還要考慮道路等級、路面情況、交通燈等待時間等因素,如,一般駕駛者都希望盡量在交通秩序較理想的主干道行車而寧愿因此多耗些時間和汽油。因此,現有的單純以Dijkstra最短路徑算法或A 3算法等規則規劃出來的路徑并不一定是最優的路徑規劃。
發明內容
本發明目的旨在克服傳統的路徑規劃算法的低效以及便攜導航系統在運算處理能力有限的不足,提供一種路徑快速規劃方法,以滿足現有導航系統快速計算、規劃最佳路徑的需要。本發明的技術方案是一種路徑快速規劃方法,包括以下步驟Si)將道路網絡按道路等級建立空間分層,并對每一層道路網絡劃分網格區域、依據道路數據建立道路網絡的拓撲結構;S2)在低層次道路網絡的起點、終點位置分別進行升層探索,搜索進入高層次道路網絡的躍點位置;S3)在高層次道路網絡上起點和終點的躍點間按最短路徑算法規劃路徑。道路網絡空間分層是根據道路等級從高到低進行分層次,低層次道路包含高層次道路,各層次道路相對獨立而且連通。每一層道路網絡以網格為單元存儲和管理數據,下層道路網絡在上層道路網絡的網格劃分基礎上進行網格劃分。所述道路網絡的拓撲結構中,對每個網格單元,賦予道路前續個數、后續個數、所在層次、正向阻力級別、反向阻力級別、后續結構索引、前續結構索引的7個屬性。
在步驟Sl中,在構建空間分層的道路網絡時采用道路合并的方法上一層的道路網絡在下一層的道路網絡基礎上,將連續的非屬性變化點和非高等級道路交叉路口的路段進行合并,將相鄰路段的連接點簡化省略。在被省略的連接點建立層級之間的路段編號對應表。在步驟S2中,在低層次道路網絡的起點、終點位置分別進行升層探索時,按起點和終點的距離的不同搜索不同的高層次道路網絡。系統在處理道路網絡的數據時,將需要的網格區域的數據加載到系統緩存中,代替磁盤的反復讀取。一種路徑快速規劃方法的升層規則,包括Si)如果起點和終點分別所在的網格之間隔一個網格以上,進行升層規劃;S2)在0層或1層內,如果起點和終點分別所在的網格之間隔一個網格,執行S3), 如果起點和終點分別所在的網格為對角相鄰,則執行S4),如果起點和終點分別所在在網格相鄰,則執行S5);S 3)起點和終點所跨的九個網格范圍,內縮四分之一個網格形成一個矩形范圍, 如果起點和終點都在該矩形范圍內,則加載矩形范圍所在的9個網格,在該層規劃,否則升層規劃;S4)起點終點所跨四個網格內縮四分之一網格形成一個矩形范圍,如果起點和終點都落在該矩形范圍內,則在該層規劃,否則升層規劃;S5)以起點和終點的中點所在網格進行擴展0. 75個網格形成一個矩形范圍,起點和終點都落在該矩形范圍內,則在該層規劃,否則升層規劃;S6)在2層內,如果起點和終點分別所在的網格為相鄰或對角相鄰的關系,則將起點和終點所跨的四個網格,內縮四分之一個網格形成一個矩形范圍,如果起點和終點在該矩形范圍內,則加載這四個網格,在2層規劃,否則升到3層規劃;S7)在2層內,如果起點和終點在同一個網格內,則以該網格的相鄰對稱網格為基礎的四個網格,內縮四分之一個網格形成一個矩形分為,如果啟點和終點在該矩形范圍內, 在加載這四個網格,在2層規劃,否則升到三層規劃;S8)在2層內,如果起點或終點至少有一點位于17、23、24這三個網格中,直接升到
三層規劃。本發明能彌補現有導航儀的硬件性能的不足所導致的路徑規劃速度慢的缺點,能夠高效快速規劃出適合出行的最優路徑,并且節省系統資源。
圖1為道路分層示意2為網格分區示意圖;圖3為道路合并示意圖;圖4為系統路徑規劃流程;圖5為雙向升層探索示意圖;圖6為路徑計算數據路段結構示意圖;圖7為判斷升層時,起點和終點相隔一個網格的示意5
圖8為判斷升層時,起點和終點處于一個網格的示意圖。
具體實施例方式本方法為一種路徑快速規劃方法,總體分為地圖的預處理和路徑規劃兩個部分, 地圖的預處理是為路徑規劃作準備。地圖的預處理包括空間分層、網格分區和道路數據拓撲結構三部分。空間分層是將路網數據根據道路等級進行分層次組織,如圖1所示,越高層的道路越高級(如高速、國道),低層道路包含高層道路,層次越低,道路越詳細(如街、巷)。網格分區如圖2所示,是將每一層道路用矩形分割成網格,并以網格為單元存儲和管理數據,當系統讀取時,以網格為單元索引讀取所需數據,具有針對性,能夠大大減少數據的讀取量,快速完成數據讀取。道路數據拓撲結構是系統進行路徑規劃的重要依據。是根據路網的實際情況為每個網格單元賦予道路層次、道路前續后續信息、網格數據索引等信息,以供系統進行路徑計算和規劃。在構建空間分層的道路網絡時采用道路合并的方法,如圖3所示,上一層的道路網絡在下一層的道路網絡基礎上,將連續的非屬性變化點和非高等級道路交叉路口的路段進行合并,將相鄰路段的連接點簡化省略如圖1所示,系統進行道路規劃時,首先設定規劃參數,包括起點、終點、經過點、 規劃方式等,由系統判斷兩點的關系,即判斷兩點是否詳細層鄰接區域,如果詳細層鄰接, 則發起低層近距離規劃,否則發起針對遠距離規劃的雙向升層探索。進行低層近距離規劃時,系統將在最底層地圖數據上進行路徑探索,由于起點終點位置接近,數據量相對少,系統規劃的時間很短。如果起點和終點分別所在的網格之間隔一個網格以上,進行升層規劃。在0層或1層內,如果起點和終點分別所在的網格之間隔一個網格,如圖7所示 (圖中s為起點,e為終點)將起點和終點所跨的九個網格范圍(如圖7 (a)、圖7 (b)、圖7 (c) 所示),內縮四分之一個網格形成一個矩形范圍,如果起點和終點都在該矩形范圍內,則加載矩形范圍所在的9個網格,在該層規劃,否則升層規劃。如果起點和終點分別所在的網格為對角相鄰,則將起點終點所跨四個網格內縮四分之一網格形成一個矩形范圍,如果起點和終點都落在該矩形范圍內,則在該層規劃,否則升層規劃;如果起點和終點分別所在在網格相鄰,則以起點和終點所在網格進行擴展0. 75個網格形成一個矩形范圍,起點和終點都落在該矩形范圍內,則在該層規劃,否則升層規劃。在2層內,如果起點和終點分別所在的網格為相鄰或對角相鄰的關系,則將起點和終點所跨的四個網格,內縮四分之一個網格形成一個矩形范圍,如果起點和終點在該矩形范圍內,則加載這四個網格,在2層規劃,否則升到3層規劃;如果起點和終點在同一個網格內,如圖8所示,(s為起點、e為終點、m為中點)則以起點和終點的中點所在網格的相鄰對稱網格為基礎的四個網格,內縮四分之一個網格形成一個矩形分為,如果起點和終點在該矩形范圍內,在加載這四個網格,在2層規劃,否則升到三層規劃;如果起點或終點至少有一點位于預定的特殊網格中,直接升到三層規劃。進行雙向升層探索時,系統將首先根據起點和終點的坐標讀取包含起點和終點的區域的最低層次道路,如圖4所示,然后在起點區域中查找高層道路,并將高層道路信息經過處理并入高層數據中。然后也在終點區域中查找高層道路,結合已有的高層道路信息進行路徑規劃。無論低層近距離規劃還是雙向升層探索,規劃得出的結果最終都需經過進行重構規劃路徑的過程,抽象路徑轉換為實體路徑,并引導和規劃路徑顯示。在進行道路規劃時,系統將所需數據加載到系統緩存中,無需頻繁的磁盤讀寫,以便快速寫數據。
權利要求
1.一種路徑快速規劃方法,其特征在于包括以下步驟51)將道路網絡按道路等級建立空間分層,并對每一層道路網絡劃分網格區域、依據道路數據建立道路網絡的拓撲結構;52)在低層次道路網絡的起點、終點位置分別進行升層探索,搜索進入高層次道路網絡的躍點位置;53)在高層次道路網絡上起點和終點的躍點間按最短路徑算法規劃路徑。
2.如權利要求1所述的路徑快速規劃方法,其特征在于道路網絡空間分層是根據道路等級從高到低進行分層次,低層次道路包含高層次道路,各層次道路相對獨立而且連通。
3.如權利要求1所述的路徑快速規劃方法,其特征在于每一層道路網絡以網格為單元存儲和管理數據,下層道路網絡在上層道路網絡的網格劃分基礎上進行網格劃分。
4.如權利要求1所述的路徑快速規劃方法,其特征在于所述的道路網絡的拓撲結構中,對每個網格單元,賦予道路前續個數、后續個數、所在層次、正向阻力級別、反向阻力級別、后續結構索引、前續結構索引的7個屬性。
5.如權利要求1所述的路徑快速規劃方法,其特征在于在步驟Sl中,在構建空間分層的道路網絡時采用道路合并的方法上一層的道路網絡在下一層的道路網絡基礎上,將連續的非屬性變化點和非高等級道路交叉路口的路段進行合并,將相鄰路段的連接點簡化省略。
6.如權利要求5所述的路徑快速規劃方法,其特征在于在被省略的連接點建立層級之間的路段編號對應表。
7.如權利要求1所述的路徑快速規劃方法,其特征在于在步驟S2中,在低層次道路網絡的起點、終點位置分別進行升層探索時,按起點和終點的距離的不同搜索不同的高層次道路網絡。
8.如權利要求1所述的路徑快速規劃方法,其特征在于系統在處理道路網絡的數據時,將需要的網格區域的數據加載到系統緩存中,代替磁盤的反復讀取。
9.一種路徑快速規劃方法的升層規則,包括51)如果起點和終點分別所在的網格之間隔一個網格以上,進行升層規劃;52)在0層或1層內,如果起點和終點分別所在的網格之間隔一個網格,執行S3),如果起點和終點分別所在的網格為對角相鄰,則執行S4),如果起點和終點分別所在在網格相鄰,則執行S5);53)起點和終點所跨的九個網格范圍,內縮四分之一個網格形成一個矩形范圍,如果起點和終點都在該矩形范圍內,則加載矩形范圍所在的9個網格,在該層規劃,否則升層規劃;54)起點終點所跨四個網格內縮四分之一網格形成一個矩形范圍,如果起點和終點都落在該矩形范圍內,則在該層規劃,否則升層規劃;55)以起點和終點的中點所在網格進行擴展0.75個網格形成一個矩形范圍,起點和終點都落在該矩形范圍內,則在該層規劃,否則升層規劃;56)在2層內,如果起點和終點分別所在的網格為相鄰或對角相鄰的關系,則將起點和終點所跨的四個網格,內縮四分之一個網格形成一個矩形范圍,如果起點和終點在該矩形范圍內,則加載這四個網格,在2層規劃,否則升到3層規劃;57)在2層內,如果起點和終點在同一個網格內,則以該網格的相鄰對稱網格為基礎的四個網格,內縮四分之一個網格形成一個矩形分為,如果啟點和終點在該矩形范圍內,在加載這四個網格,在2層規劃,否則升到三層規劃;58)在2層內,如果起點或終點至少有一點位于17、23、24這三個網格中,直接升到三層規劃。
全文摘要
本發明為一種路徑快速規劃方法,包括以下步驟S1)將道路網絡按道路等級建立空間分層,并對每一層道路網絡劃分網格區域、依據道路數據建立道路網絡的拓撲結構;S2)在低層次道路網絡的起點、終點位置分別進行升層探索,搜索進入高層次道路網絡的躍點位置;S3)在高層次道路網絡上起點和終點的躍點間按最短路徑算法規劃路徑。本發明以道路合并、雙向升層探索等方法規劃導航路徑,能滿足現有導航系統快速計算、規劃最佳路徑的需要。
文檔編號G01C21/34GK102435200SQ201110260870
公開日2012年5月2日 申請日期2011年9月5日 優先權日2011年9月5日
發明者李慶建 申請人:廣東東納軟件科技有限公司