TW201211508A - Navigation devices and methods carried out thereon - Google Patents

Navigation devices and methods carried out thereon Download PDF

Info

Publication number
TW201211508A
TW201211508A TW99131282A TW99131282A TW201211508A TW 201211508 A TW201211508 A TW 201211508A TW 99131282 A TW99131282 A TW 99131282A TW 99131282 A TW99131282 A TW 99131282A TW 201211508 A TW201211508 A TW 201211508A
Authority
TW
Taiwan
Prior art keywords
route
bit
cost
time
path
Prior art date
Application number
TW99131282A
Other languages
Chinese (zh)
Inventor
Heiko Schilling
Ewgenij Gawrilow
Moritz Hilger
Andreas Profous
Juergen Werber
Simone Tertoolen
Original Assignee
Tomtom Int Bv
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tomtom Int Bv filed Critical Tomtom Int Bv
Priority to TW99131282A priority Critical patent/TW201211508A/en
Publication of TW201211508A publication Critical patent/TW201211508A/en

Links

Landscapes

  • Navigation (AREA)

Abstract

This invention concerns a method of determining a route using map data comprising a plurality of navigable paths, the map data divided into a plurality of regions. The method comprises using at least one processing apparatus to: receive an origin and a destination on the map data and a travel time, determine a route from the origin to the destination using the map data and minimum cost data that identifies minimum cost paths between regions of the map data. The minimum cost data identifies more than one minimum cost path between a pair of the regions if different minimum cost paths exist between the pair of regions at different times and determining a route comprises identifying from the minimum cost paths for the pair of regions comprising the origin and destination. the minimum cost path having a lowest cost at the travel time.

Description

201211508 六、發明說明: 【發明所屬之技術領域】 本發明係關於一種使用地圖資料確定路線之電腦化方法 及相關系統。特定言之(但非排他地),該方法可用於用以 促進路線規劃之導航裝置中。 【先前技術】 吾人已知路線規劃演算法(諸如,Dijkstra方法、A*方法 或M〇ore/Pape方法)。然而,此等方法可稍微有點慢。在 US 6 636 8〇〇中展示了可如何增加此路線規劃之速度之實 例’該案之教示在此以引用的方式併入本文。us 6咖麵 教示藉由將地圖劃分成多個區且確定至該地圖之每一區的 最短路徑(最小成本路徑)之樹而預處理地圖資料。將此婉 T處理之資料儲存於記憶體中,且在路線之計算期間❹ 此經預處理之資料。 内ί特二:之’當起點位於一個區内且目的地位於另-區 路線之部分的在該等區之 用作 線所需的處理之“ ^ 此方去減小了確定路 寻級,因為其減小了當使用去咬出士… 線時所探索的路徑之數目。 者μ求確疋路 應理解,「具 意謂具有最小成距離之路徑,而是 公式中之所考慮的因素^路徑^成本將視如指定於成本 及燃料使用之gj素。、疋且可考慮到諸如最快速路線 當區之間的最短路 保持静態時’此方法為極成功的。 150832.doc 201211508 然而,交通條件隨著時間的過去之改變可改變為區之間的 取紐路徑之路徑,使得經預處理之樹不再識別區之間的真 正最短路徑。此可導致確定一針對指定準則而言並非最佳 路線的路線。 、 【發明内容】 - 根據本發明之第一態樣,提供一種使用包含複數個可導 航路徑之地圖資料確定一路線之方法,該地圖資料被劃分 成複數個區,該方法包含使用至少一處理設備以:接收該 地圖 > 料上之一起點及一目的地以及一旅程時間,使用該 地圖資料及識別該地圖資料之區之間的最小成本路徑之最 小成本資料確定自該起點至該目的地之一路線,其特徵在 於,在不同時間在該等區中的一對區之間存在不同最小成 本路徑的情況下,該最小成本資料識別該對區之間的一個 以上最小成本路徑,且確定一路線包含自包含該起點及該 目的地的該對區之該等最小成本路徑中識別在該旅程時間 q 具有一最低成本的該最小成本路徑。 本發明可在不同時間在區中的一對區之間存在不同最小 成本路徑的情況下,相對於使用不識別在該對區之間的一 個以上最小成本路徑之資料而增加識別在旅程時間在該等 區之間的最小成本路徑之可能性。然而,使用最小成本資 料使得能夠比在使用從頭開始確定最小成本路徑的方法時 更迅速地確定路線。舉例而言,交通條件之可預測改變 (諸如,規則的高峰時間)可變更區之間的最小成本路徑。 預先計算在不同時間在區之間的最小成本路徑可允許考慮 150832.doc 201211508 到此等週期性改變。 確定該路線可包含獨立於時間根據該最小成本資料識別 一對區之間的最小成本路徑,且針對自旅程時間導出的一 或多個相關時間而對該等經識別之最小成本路徑實行一成 本分析以確定在該旅程時間處的最小成本路徑。此可允許 最小成本資料具有小得多之大小,因為關於最小成本路徑 之資料不需要交叉參考彼等路徑為最小成本路徑之時間。 諸士 :導航裝置之路線規劃器可確定由最小成本資料識別的 路徑子集中之哪一路徑為在相關時間時的最小成本路徑。 此配置確實將小的額外處s負擔轉移给路線規劃器,但是 作為回報’大量節省了最小成本資料的大小。 '然而’在-替代配置中,該最小成本資料針對每一最小 成本路徑識別了該路徑為該最小成本路徑的一參考時間, 且確疋-路線包含根據該最小成本f料選擇—具有一對應 於自-亥旅程時間導出的—或多個相關時間之參考時間之最 小成本路徑。此配置具有優點’因為將必須 二心 路線以找到最小成本路線。 曰在 相關時間可為到達由最小成本路徑連接的節點之 間。節點為地圖上的可導航路 、’、曰、 Α 又入/分又之戥忐-r 導航路徑之終點。因此,經由基於成 :… Γ 路線中之最小成本路《不會全部針料: 間I是將針對不同時間(視到達沿著路 二時 而定卜舉例而言,若預測出花費—小時來二之時間 線’則將基於到達沿著該路線的節點迅路 才间而識別/選擇 I50832.doc 201211508 針對彼小時中之時間之最小成本路徑。 最小成本資料及確定路線可 _ 刀選擇 时说 進订’因為僅可在Ρ湓八 路線之-部分的情況下選擇最小成本資料。 疋 旅程時間可為自起點之出發時間、到 或到達沿著路線的特定所在地(諸如,節點)之時間 時達成所要等級之精確性,最小成本資料之 ^解析度應具有秒之數量級,較佳地具有十分之 Ο 數讀,且最佳地,具有百分之—秒之數量級。已發現 使用具有較粗略等級之時 ^ ^ 丰的最小成本資料導致不可 接文的精確性等級。此外,在 Λ A f- PR Ηη ^ 心或百分之一秒 數的乾圍内處理可相對於物秒為基數的處理簡化計 需要避免比百分之一秒精細之等級,因為此可需 要車父大數目個位元來儲存資料。應理解,可將百分之一秒 之時間解析度儲存為32位元串,而較高解析度可能需要Μ 1立串〇 〇 "路徑選擇演算法可為基㈣本公式將成本指派給不同路 '之路徑選擇演算法。地圖資料可包含識別在不同時間在 路杈上的預期速度之速度概況資料。可將該地圖資料之複 —條路彳1 4为成複數個可導航段,且速度概況資料可識別 -每V導航段之速度概況。可至少部分地根據構成一路徑 之了導航I又之速度概況確定該路徑之成本。 在一實施例中,該方法包含根據速度概況資料確定針對 相關時間之速度,其中根據所考慮的路線中之每一者的所 確定之速度來計算成本。 150832.doc 201211508 在一替代實施例中,該方法包含根據所寺 導航段之速度概況之多個值(而非單;的路線之可 況。換t之 士士 \i 值)來確定成本概 、。之成本公式接收概況(亦即,函數) 輸出表示在不同時間的路線之成本之概況。為輸入且 確定隨著時間的過去的路線之成本的變化。 方式,可 該方法可包含確定針對不同旅程時間在 ;也之間的複數條路線。舉例而言,該複數: 較不同旅程時間如何影響路線及/或用以、,,L— 了用以比 的地之間的路線行進之預測時間。舉例^者起點與目 期間幹線公路可能並非區之間的最小成本:徑, :::::成最小成本路徑。此可導致針對不同旅::: 的在起點與目的地之間的不同路線及行進才間 數條路線可允許使用者基於對所確 s 疋複 程時間作出決策。 《疋之路線的比較而就旅 可將複數條路線之確定與成本概況之產生& 複數條路線之自起點至目的地的成本概況/、口 乂產生該 该方法可包含接收-概況請求以確定針對經定義準則在 起點與目的地之間的最佳旅程時間,且作為回應, 數條路線之成本概況(每-路線針對—不同旅程時且 將結果顯示給使用者。 結果之顯示可為最佳路線之旅程時間之顯示。因此,該 法可包含根據該成本概況(例如’藉由比較成本概況之 值而筛選結果)來確定針對經定義之準則該複數條路線中 之哪-路線為最佳路線。以此方式,處理設備確定使用者 150832.doc 201211508 的最佳路線,且不需要由使用者進行分析。 或者,結果之顯示可為成本概況之顯示(諸如’圖)。以 此方式,使用者可基於對所定義準則之評估以及選擇最適 合他/她之時間來選擇路線。舉例而言,在起點與目的地 之間行進之最快速時間可能為在晚上,但使用者可選擇次 最佳的路線,因為其在更方便的旅程時間(❹白天期 間的某時間)。藉由顯示該複數條路線中之全部路線或至 Ο Ο 少-條以上路線之結果,使用者可就旅程時間及此如何影 響路線作出明達的決策。 在一實施射,概況請求包括時段,料線之搜尋被限 ㈣時段内。舉例而言,使用者m旅程日㈣應在兩個 %間之間(例如,在上午6點與上午9點之間),或在某一天 (例如,在星期-),在某個日期(例如,7月i日),某個星 期或=月。或者,處理設備可自動搜尋旅程時間落在使 =者指定之旅程時間之窗内(例如,使用者旅程時間咖分 :之路線’且在發現具有不同旅程時間的—路線比 定之旅程時間的路線具有較低成本時,向使用者 建4替代旅程時間。 在-實施例中’該方法包含經由使用者介面自使 收旅私時間且使顯示賴示所確定之路線的影像。咳方 2 =得使用者能夠在檢視展示所衫之路線之二 2 =的同時改變旅程時間。舉例而言,回應於旅程時 、己文可針對改變之指定旅程時間確定新路線, 該新路線之影像更新顯示器。或者,可已(例:線經= 150832.doc 201211508 最】成本_ 定針對其他時間的 最小成本路線。可「即時」(例如,在毫秒之數量^ 顯示器之更新,例如,小於1000亳秒且轸 '' 秒。可經由使用用以識別區之間 ^小於500* 採夕爭丨士 h , 乂承路技之經預處 之最小成本貧料而獲得此等快速重新計算時間 使整個營幕再新、使舊路線淡出及使新路線淡人及日盆 動晝來實灯顯不器之更新。應理解,新路線可=與 :路線相同或不同於舊路線,此視是否在最小成本路徑中 存在改變而定。 =一實施例中,該方法可包含使得顯示表示旅程時間的 4 ’且回應於制者與該滑桿互動而確定新路線且以节 新路線之影像更新顯㈣。該方法可包含確定並顯示新路 線以使得對制者而言在該使㈣改變旅料間之時盘新 路線之顯示之時之間存在難以察覺的延遲。舉例而言,在 使用者移動滑桿與顯示新路線之間的延遲小於…且較佳 小於0.5秒。 根據本龟明之第二態樣,提供一種儲存有指令之資料載 體’該等指令在由一處理設備執行時使該處理設備執行根 據本發明之第一態樣之方法。 根據本發明之第三態樣,提供一種資料載體,其儲存 有.包含複數個可導航路徑之地圖資料,該地圖資料被劃 成複數個區’及硪別在不同時間在該地圖資料之該等區 之間的最小成本路徑之最小成本資料。 此貝料載體為有利的’因為其可用於根據本發明之第一 150832.doc 10· 201211508 態樣的對路線之確定。 根據本發明之第四態樣,提供—種包含記憶體及處理設 備之電腦裝置,該記憶體儲存有:包含複數個可導航路徑 ,資料,該地圖資料被劃分成複數個區,識別該地圖 資料之該等區之間的最小成本路徑之最小成本資料;該處 :理設備經配置以接收該地圖資料上的一起點及一目的地及 一旅程時間,且使用該地圖資料及該最小成本資料來確定 自該起點至該目的地點的一路線,其特徵在於,在不同時 ° Pa1在該等區中的—對區之間存在不同最小成本路徑的情況 下,該最小成本資料識別該對區乏間的一個以上最小成本 路徑,且確定-路線包含當考慮該旅程時間時根據該最小 成本資料識別包含該起點及該目的地的區之間的該路線之 一最小成本路徑。 根據本發明之第五態樣,提供一種使用地圖資料、最小 成本資料及速度概況確定一路線之方法,該地圖資料包含 Q 表示該地圖資料之可導航路徑之段的複數個可導航段;該 最小成本資料識別該地圖資料之區之間的最小成本路徑, 在於不同時間在該等區中的一對區之間存在不同最小成本 ; 路徑的情況下,該最小成本資料識別該對區之間的一個以 : 上敢小成本路徑’ 5亥專可導航段之該等速度概況識別該等 可導航段上之速度如何隨著時間的推移而變化,該方法包 含使用至少一處理設備以··搜尋該地圖資料上之自_起點 至一目的地的一或多條路線,該搜尋包含確定連接至一節 點的一組可導航段中之一或多個可導航段是否被該最小成 150832.doc • 11 · 201211508 本貪料識別為包含該起點及該目的地的區之一最小成本路 徑之部分’且在該組中之該等可導航段中之一或多個可導 航奴被識別為一最小成本路徑的部分的情況下,自該組僅 探索經識別為一最小成本路徑的部分之該一或多個可導航 奴且根據該等所探索的可導航段之該等速度概況而確定 隨著和·間的過去該一或多條路線之一成本概況。 °亥成本概况允許一使用者及/或導航設備確定改變一旅 程時間將如何變更該路線之成本。以此方式,可基於 概况選擇旅程時間。 根據本發明之第六態樣,提供—種儲存有指令之資料載 =’該等指令在由—處理設備執行時使該處理設備執行根 據本發明之第四態樣之方法。 根據本發明之第七態樣,提供—種包含記憶體及處理設 備之電腦裝置,該記憶體儲存有地圖資料,該地圖資料包 含表不該地圖資料之可導航路徑之段的複 及該等可導航段之速度概況,啰蓉¥航丰又 亥等逮度概況識別在該等可 r 速度如何隨著時間的推移而變化;該處理設倩 涇配置以搜尋該地圖資料上之 夕玫,々城 起點至一目的地的一或 :條路線^搜尋包含確定連接至—節點的導航段 n At WL· Μ ^ Β 、成本貪料識別為包含 此占及忒目的地的區之一最小 έθ ^ ^ ^ -Γ ^之#分,且在該 ,,,以,°航段中之-或多個可導航 成本路徑的部分的情況下,自哕 、別為一取小 成本路徑的部分之該一或多 別為最小 導叙奴,且根據該等所探 150832.doc -12· 201211508 索的可導航段之該等速度概況而確定隨著時間的過去該一 或多條路線之一成本概況。 根據本發明之第八態樣,提供一種導航裝置,其包含_ . (位系統、-顯示器、-使用者介面及一根據本發明之第 四悲樣之電腦裝置,其中處理器經配置以經由在該使用者 ' 彳面上之輸人而導出起點及目的地且將確定之結果顯示於 該顯示器上。該處理器可根據在該使用者介面上之輸入、 «如由-内部時脈指示之-當前時間而確定旅程時間, 或可確定具有不同旅程時間的複數條路線。 根據本發明之第九態樣’提供—種使用地圖資料確定並 -貝示路線之方法’該地圖資料包含表示該地圖資料之可 導航路徑之段的複數個可導航段及該等可導航段之速度概 況々,該方法包含回應於在使用者介面上之輸入而確定沿著 該等可導航段之-路線,根據該等相關聯之速度概況而喊 定沿著該路線之可導航段之一預期速度,i顯示該所確定 〇 之路線以及對在該路線之該等可導航段中之至少一些可導 航段上的該預期速度的一指示。 根據本發明之第十態樣,提供—種儲存有指令之資料載 冑’該等指令在由-處理器執行時使該處理器實行本發明 之第五態樣之方法。 根據本發明之第十—態樣,提供—種電腦裝置,其包含 —顯示器、一使用者介面、記憶體及處理設備.,該記憶體 儲存有地圖資料’該地圖資料包含表示該地圖資料之可導 航路徑之段的複數個可導航段及該等可導航段之速度概 150832.doc -13- 201211508 況,該等速度概況表示在不同時間沿著彼段之—預測行進 速度,該4理設備經配置以回應於在該使用者介面上的輸 入而確定沿著該等可導航段之—路線,根據該等相關聯之 速度概況而確定沿著該路線之可導航段之一預期速度,且 使該顯示器顯示該所確定之路線以及對在該路線之該等可 v航#又中的至少-些可導航段上的該預期速度的—指示。 該處理設備可使該顯示器顯示—旅程時間,該使 經由與該使用者介面互動而改變該旅程時間,其中回心 對該旅程時間的改蠻,兮卢 。 …… 5亥處理益確定針對新的旅程時間的 >口者该路線之可導航段的更新 ^ ^ v 4t 預J速度,且更新該路線 亥』不以扎示該等更新之預期速度。 旅程時間可由顯示器一 ,曰 的⑺#指不,使用者可移動哕,、典 桿以調整旅程時間。 秒動肩/月 預期速度之指示可為可蓬~ ^ ^ 马了¥航段之彩色編碼。舉例而+, 若預期速度高於第—牛例而δ 制的20%範圍内), 航奴之速度限 )則可將可導航段著色Λ箪拓众"I 如,綠色),色為弟一顏色(例 頂期速度低於第二臨限 航段著色為第二顏色(例如,紅色 、"將可導 限值可為同一值。 s品限值及第二臨 以此方式’使用者可確定慶塞點可 且(視情況地)變旻栌+ 路 ',泉上的何處, D父更旅程時間對此等奎 【實施方式】 U塞點之影響。 以下為僅舉例而t的失姜 之詳細描述。°的參看隨附圖式的對本發明之實施例 150832.doc -14* 201211508 貫穿以下描述,相同參考數字將用以識別相似部分。貫 穿對各個實施例之描述,對參考數字處於19灯系列中的圖 22之流程圖進行了參考。 位系統(GPS),全球定位系統 導航系統,其可用以確定無限 速度、時間,及(在一些情況 圖1示意性地展示全球定 (GPS)為基於衛星_無線電之 數目個使用者之連續位置、201211508 VI. Description of the Invention: TECHNICAL FIELD OF THE INVENTION The present invention relates to a computerized method and related system for determining a route using map data. In particular (but not exclusively), the method can be used in navigation devices to facilitate route planning. [Prior Art] A route planning algorithm (such as the Dijkstra method, the A* method, or the M〇ore/Pape method) is known. However, these methods can be a bit slower. An example of how this route planning can be increased is shown in US Pat. No. 6,636, the disclosure of which is incorporated herein by reference. Us 6 The novice teaches pre-processing map data by dividing the map into zones and determining the tree of the shortest path (minimum cost path) to each zone of the map. The data processed by this 婉T is stored in the memory, and the preprocessed data is calculated during the calculation of the route.于内特二: 'The processing required to be used as a line in the area where the starting point is located in an area and the destination is located in the other part of the route" ^ This side reduces the determined way of finding the way, Because it reduces the number of paths that are explored when using the bite to get out of the line... The way to make sure that the line is understood is that "the path with the smallest distance is meant, but the factor considered in the formula. ^ Path ^ Cost will be as specified in the cost and fuel use. It can be considered very fast when the shortest path between the zones is kept static. This method is extremely successful. 150832.doc 201211508 However The change in traffic conditions over time can be changed to the path of the take-up path between the zones, such that the pre-processed tree no longer identifies the true shortest path between the zones. This can result in determining a for a given criterion A route that is not an optimal route. [Invention] - According to a first aspect of the present invention, there is provided a method of determining a route using map data including a plurality of navigable paths, the map data being divided into plural numbers Zone, the method comprising using at least one processing device to: receive the map > a starting point of a material and a destination and a journey time, using the map data and identifying a minimum cost path between the regions of the map data The cost data determines a route from the starting point to the destination, characterized in that, in the case where there are different minimum cost paths between a pair of zones in the zones at different times, the minimum cost data identifies the pair of zones One or more least cost paths between, and determining that a route includes the least cost path having a lowest cost at the journey time q from the least cost paths of the pair of zones including the origin and the destination. Where different minimum cost paths exist between a pair of zones in a zone at different times, the identification is increased at the time of the journey relative to the use of data that does not identify more than one least cost path between the zones The possibility of a minimum cost path between zones. However, using the minimum cost data enables the determination to be made from scratch The method of small cost path determines the route more quickly. For example, predictable changes in traffic conditions (such as the peak time of the rule) can change the minimum cost path between zones. Pre-calculated between zones at different times The minimum cost path may allow for periodic changes to be considered from 150832.doc 201211508. Determining the route may include identifying a minimum cost path between a pair of zones based on the minimum cost profile independent of time, and for one or both derived from the journey time Performing a cost analysis on the identified minimum cost paths for a plurality of relevant times to determine a minimum cost path at the journey time. This may allow the minimum cost data to be of a much smaller size because of the information about the least cost path There is no need to cross-reference the time when the paths are the least cost path. 士士: The route planner of the navigation device can determine which of the path subsets identified by the least cost data is the least cost path at the relevant time. This configuration does transfer a small extra s burden to the route planner, but in return' substantial savings in the size of the minimum cost data. In the alternative configuration, the minimum cost profile identifies, for each least cost path, a reference time for the path to the minimum cost path, and confirms that the route includes selecting based on the minimum cost. The minimum cost path for the reference time derived from the -Hour journey time or at multiple relevant times. This configuration has the advantage of 'because the two-way route will have to be found to find the least cost route.相关 The relevant time can be between the nodes connected by the least cost path. The nodes are the navigable paths on the map, ', 曰, Α, and/or the 戥忐-r end of the navigation path. Therefore, via the minimum cost road based on the route: ... 《 "Not all needles: Inter I will be for different time (depending on the arrival of the road 2, for example, if the cost is predicted - hour The second timeline will identify/select the minimum cost path for the hour of the hour based on the node's routing along the route. Minimum cost information and route determination _ knife selection Ordering 'because only the part of the route can be selected for the minimum cost data. 疋The journey time can be from the departure time of the starting point, to or to the time of the specific location (such as the node) along the route. To achieve the desired level of accuracy, the resolution of the minimum cost data should be of the order of seconds, preferably with a tenths of a reading, and optimally, of the order of percent to the second. It has been found to be coarser. At the time of rating ^ ^ The minimum cost data of the abundance leads to the accuracy level of the unreachable text. In addition, it can be processed within the dry circumference of Λ A f- PR Η ^ ^ ^ heart or one hundredth of a second. For the processing of the object-seconds, the simplification meter needs to avoid a finer level than one-hundredth of a second, because this can require a large number of bits of the car to store the data. It should be understood that the resolution can be one hundredth of a second. Stored as a 32-bit string, and higher resolution may require Μ 1 string 〇〇 " path selection algorithm can be the base (4) this formula assigns cost to different path' path selection algorithm. Map data can include identification The speed profile of the expected speed on the road at different times. The complex data of the map data can be divided into a plurality of navigable segments, and the velocity profile data can be identified - the velocity profile of each V navigation segment The cost of the path may be determined based, at least in part, on the speed profile of the navigation I that constitutes a path. In an embodiment, the method includes determining a speed for the correlation time based on the speed profile data, wherein the route is considered The determined speed of each of these is used to calculate the cost. 150832.doc 201211508 In an alternate embodiment, the method includes multiple profiles based on the speed profile of the temple navigation segment (not a single; the course of the route. Change the value of the taxi \i value) to determine the cost profile. The cost formula receiving profile (ie, function) outputs an overview of the cost of the route at different times. Entering and determining changes in the cost of the route over time. The method may include determining a plurality of routes for different journey times; and, for example, the plural: how different journey times affect The route and / or use,,, L - the predicted time of the route between the land used for comparison. For example, the starting point and the target period of the main road may not be the minimum cost between the areas: diameter, :::: : into a minimum cost path. This can result in different routes between the starting point and the destination for different travels::: and several routes between the travels can allow the user to make a decision based on the determined time of the return. The comparison of the route of the 疋 就 就 旅 旅 旅 旅 旅 旅 旅 旅 旅 旅 旅 旅 旅 旅 旅 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定 确定Determining the optimal journey time between the starting point and the destination for the defined criteria, and in response, the cost profile of the several routes (per-route targeted - different journeys and showing the results to the user. The result display can be The display of the journey time of the best route. Therefore, the method may include determining which of the plurality of routes for the defined criteria based on the cost profile (eg, 'screening the results by comparing the values of the cost profiles') In this way, the processing device determines the best route for the user 150832.doc 201211508 and does not need to be analyzed by the user. Alternatively, the display of the results can be a display of the cost profile (such as a 'map). In this way, the user can select a route based on an evaluation of the defined criteria and selecting the time that best suits him/her. For example, at the starting point and the destination The fastest time to travel between the grounds may be at night, but the user may choose the next best route because it is at a more convenient journey time (sometime during the day). By showing the multiple routes For all routes or to Ο Ο less - the results of the above routes, the user can make an informed decision on the travel time and how this affects the route. In one implementation, the profile request includes the time period, and the search for the stock line is limited to (4). For example, the user m journey day (four) should be between two % (for example, between 6 am and 9 am), or on a certain day (for example, in the week -), on a certain date ( For example, July i), a week or = month. Or, the processing device can automatically search for the journey time to fall within the window of the journey time specified by the person (for example, the user journey time coffee: route) In the case where it is found that the route with different journey times has a lower cost than the route of the determined journey time, the user is provided with 4 alternative travel time. In the embodiment, the method includes self-contained travel time via the user interface. Make a display of the image of the route determined by the cough. 2 = The user can change the journey time while checking the route 2 of the shirt. For example, in response to the journey, the text can be changed. The specified journey time determines the new route, and the image of the new route updates the display. Alternatively, it can be (for example: line = 150832.doc 201211508 most) cost _ set the minimum cost route for other time. It can be "instant" (for example, In the number of milliseconds ^ update of the display, for example, less than 1000 亳 seconds and 轸 '' seconds. Can be used to identify between the zones ^ less than 500 * 采 丨 丨 h , , , , , , , , , , The quickest recalculation time for the lowest cost and poor material makes the entire camp renewed, the old route fades out and the new route is lighter and the daylight is refreshed. It should be understood that the new route may be the same as or different from the route, depending on whether there is a change in the least cost path. In an embodiment, the method can include causing the display of the travel time 4' and responding to the maker interacting with the slider to determine a new route and update the image with the new route (4). The method can include determining and displaying a new route such that the controller has an imperceptible delay between when the display of the new route is changed (4). For example, the delay between the user moving the slider and displaying the new route is less than ... and preferably less than 0.5 seconds. According to a second aspect of the present invention, a data carrier storing instructions is provided. The instructions, when executed by a processing device, cause the processing device to perform the method according to the first aspect of the present invention. According to a third aspect of the present invention, a data carrier is provided, which stores map data including a plurality of navigable paths, the map data is divided into a plurality of regions, and the map data is discriminated at different times. The minimum cost of the minimum cost path between the zones. This batting carrier is advantageous 'because it can be used for the determination of the route according to the first aspect of the invention 150832.doc 10·201211508. According to a fourth aspect of the present invention, a computer device including a memory and a processing device is provided, the memory storing: including a plurality of navigable paths, data, the map data is divided into a plurality of regions, and the map is identified The minimum cost data of the least cost path between the zones of the data; the location: the device is configured to receive a point on the map data and a destination and a journey time, and use the map data and the minimum cost Data to determine a route from the starting point to the destination point, wherein the minimum cost data identifies the pair if, at different times, Pa1 has different minimum cost paths between the pairs in the zones More than one least cost path for the zone, and the determination-route includes identifying a minimum cost path for the route between the zone containing the origin and the destination based on the minimum cost profile when considering the journey time. According to a fifth aspect of the present invention, there is provided a method of determining a route using map data, minimum cost data, and a speed profile, the map material comprising a plurality of navigable segments in which Q represents a segment of the mappable path of the map data; The minimum cost data identifies a minimum cost path between the zones of the map data, wherein different minimum costs exist between a pair of zones in the zones at different times; in the case of a route, the minimum cost profile identifies between the pair of zones One of the following: The speed profile of the 5th private navigation segment identifies how the speeds on the navigable segments change over time, the method comprising using at least one processing device. Searching for one or more routes from the origin to the destination on the map data, the search comprising determining whether one or more of the set of navigable segments connected to a node is minimized to 150832. Doc • 11 · 201211508 This greedy material is identified as part of the minimum cost path that contains the starting point and one of the areas of the destination' and the navigable segments in the group Where one or more navigable slaves are identified as part of a least cost path, only one or more navigable slaves identified as part of a least cost path are explored from the set and according to the The velocity profiles of the explored navigable segments determine a cost profile for one of the one or more routes along with the past. The HA cost profile allows a user and/or navigation device to determine how changing the travel time will change the cost of the route. In this way, the journey time can be selected based on the profile. According to a sixth aspect of the invention, there is provided a data stored with instructions =' such instructions, when executed by a processing device, cause the processing device to perform the method according to the fourth aspect of the invention. According to a seventh aspect of the present invention, there is provided a computer device comprising a memory and a processing device, the memory storing map data, the map data comprising a segment of a navigable path indicating the map data, and the like The overview of the speed of the navigable section, the overview of the catching degree of Cicada, Hangfeng and Hai, and how the speed can change with time; the process is set to search for the map. One or two routes from the starting point of the city to the destination: the search includes the navigation segment n At WL· Μ ^ 确定 that determines the connection to the node, and the cost is identified as one of the zones containing the occupied destination. ^ ^ ^ -Γ ^#, and in the case of the , or , , , , or part of the navigable cost path in the segment, the part of the path that takes the small cost The one or more are the smallest guide slaves, and determine the cost of one of the one or more routes over time based on the speed profiles of the navigable segments of the detected 150832.doc -12·201211508 Overview. According to an eighth aspect of the present invention, a navigation apparatus is provided, comprising: a bit system, a display, a user interface, and a computer device according to a fourth sorrow of the present invention, wherein the processor is configured to Deriving the starting point and destination on the user's face and displaying the determined result on the display. The processor can be based on the input on the user interface, «as indicated by - internal clock Determining the journey time by the current time, or determining a plurality of routes having different journey times. According to the ninth aspect of the present invention, 'providing a method for determining and using a map data using a map material' a plurality of navigable segments of the mapable data path and a speed profile of the navigable segments, the method comprising determining a route along the navigable segments in response to input at the user interface Determining the expected speed of one of the navigable segments along the route based on the associated speed profiles, i showing the determined route and the guidance for the route An indication of the expected speed on at least some of the navigable segments of the segment. According to a tenth aspect of the present invention, a data stored with instructions is provided that the instructions are executed by the processor According to a tenth aspect of the present invention, there is provided a computer device comprising: a display, a user interface, a memory and a processing device. The memory is stored Map data 'The map material contains a plurality of navigable segments representing the navigable path of the map data and the speed of the navigable segments is 150832.doc -13- 201211508, the speed profiles are represented at different time points In the case of predicting the speed of travel, the device is configured to determine a route along the navigable segments in response to input at the user interface, determining the edge based on the associated velocity profiles The expected speed of one of the navigable segments of the route, and causing the display to display the determined route and the pre-position on at least some of the navigable segments of the route Speed-indication. The processing device can cause the display to display a journey time, which changes the journey time by interacting with the user interface, wherein the return time is changed to the time of the journey, 兮卢. ...... The processing benefit determines the update of the navigable segment of the route for the new journey time ^ ^ v 4t pre-J speed, and updates the route to not indicate the expected speed of the update. The journey time can be displayed by the display First, the ((7)# means no, the user can move 哕, and the tempo to adjust the journey time. The second shoulder/month expected speed indication can be copable~ ^ ^ The horse has the color code of the flight segment. For example +, if the expected speed is higher than the first - cow case and the δ system is within 20%), the flight slave speed limit) can color the navigable segment to the general public "I, green, color is brother The color (for example, the top period speed is lower than the second threshold segment is colored to the second color (for example, red, " the limit value can be the same value. s product limit and second pro in this way 'user can determine the Qingsai point can (as appropriate) change 路 + road', where on the spring, D father more journey time on this Kui [implementation Mode] The effect of the U-plug point. The following is a detailed description of the ginger lost by way of example only. References to Embodiments of the Invention With reference to the accompanying drawings, the following reference numerals will be used to identify like parts. Throughout the description of the various embodiments, reference is made to the flowchart of Figure 22 in which the reference numerals are in the 19 lamp series. Position system (GPS), a global positioning system navigation system, which can be used to determine infinite speed, time, and (in some cases, Figure 1 schematically shows the global position (GPS) as a continuous position of a number of users based on satellite_radio ,

下)方向資訊。過去被稱為NAVSTAR2Gps併入有在極其 精確的執道巾繞地球運轉之複數個衛星。基於此等精確軌 道GPS衛生可將其所在地作為Gps資料中繼冑遞至許多 接收單元。然而,應理解,可使用諸如gl〇SNass、歐洲 伽利略(Galileo)定位彡、統、c〇MpASS定位系統或以刪 (印度區域導航衛星系統)之全球定位系統 ,當經專Η配備以接收GPS資料之裝置開始掃描無線電頻 率以發現GPS衛星信號時’實施Gps系統。在自Gps衛星 接收到無線電信號後,該裝置經由複數種不同習知方法中 之一者來確定該衛星之精確所在地。在多數情況下,該裝 置將繼續掃描以發現信號,直至其已獲得至少三個不同的 衛星信號(注意,可使用其他三角量測技術藉由僅兩個信 就來確定位置,雖然這並非常例)。在實施幾何三角量測 的情況下,接收器利用三個已知之位置來確定其自己相對 於該等衛星之二維位置。可以已知方式進行此綠定。另 外,獲得第四個衛星信號允許接收裝置知 同幾何計算來計算其三維位置。無限數目個使用者= 地即時更新位置及速度資料。 15〇832.d〇c -15- 201211508 如圖1中所展示,GPS系統1 〇〇包含圍繞地球1 〇4運轉的 複數個衛星102。GPS接收器1 〇6自該複數個衛星102中的 若干衛星接收作為展頻GPS衛星資料信號1 〇8的GPS資料。 自每一衛星102連續地發射展頻資料信號1〇8,所發射的展 頻資料信號108各自包含一資料流,該資料流包括識別該 資料流所源於的特定衛星1 〇2之資訊。GPS接收器106通常 需要來自至少三個衛星102之展頻資料信號1〇8,以便能夠 計算二維位置。對第四個展頻資料信號之接收使Gps接收 器106能夠使用已知技術計算三維位置。 因此,GPS系統允許具有gps接收器1 〇6的裝置之使用者 將其在地球上的位置確定到幾公尺範圍内。為了利用此資 。孔,$見做法是依賴於允許在其上展示使用者之位置的電 子地圖。諸如 TeleAtlas (http://www.teleatlas.c〇m)之提供 者提供了此等地圖之實例。 此等電子地圖不僅允許使用Gps系統(或藉由其他方式) 將使用者之位置展示於電子地圖上,而且其允許使用者規 劃旅打路線及其類似者(路徑選擇目的了進行此路線 規劃,由導航裝置來處理電子地圖,該導航 計算裝置提供。 導航裝置之特定實例包括衛星導航褒置(s此㈣, 便於稱作攜帶型導航裝置(PND)。然而,應記住,本發 限於卿,而是可改為#遍應用於經_以處 型之處理裝置。因此,由此可見功能性的任何; 田此T見,在本申請案之背景下 J50832.do, -16· 201211508 導:裝置:欲包括(而不限於)任何類型之路線規劃及導航 乂無❸亥裝置是體現為PND、諸如汽車之運輸工且、 攜帶型計算資源(例如,執行路線規劃及導航軟體之攜帶 ;Ϊ個人電腦(PC)、行動電話或個人數位助理(而))或伺服 @ ’或是體現為跨越網路提供此功能性的其他計算裝置。 • _ 在圖3a及圖4b中展千兮g 甲展不忒呈PND之形式的導航裝置之實 例,且應注意,導航裝置2〇〇之方塊圖不包括該導航裝置 之所有組件’而是僅為許多實例組件的代表。導 ϋ 細位於-外殼(未圖示)内 —航裝置 导航展置2〇〇包括處理電路, 該處理電路包含(例如)上文所提及之處理器2〇2,該處理哭 2〇2搞接至輸入裝置2〇4及顯示裝置⑽如,顯示營幕206): =此處以單數形式提及輸入裝置2〇4,但熟習此項技術 者應瞭解,輸入裝置2〇4表示任何數目個輸入裝置 鍵盤装置、語音輸入裝置、觸控面板及/或用以輸入資= 之任何其他已知輸入裝置。同樣,顯示榮幕2〇6可包括諸 〇 如液晶顯7^器(LCD)之任何類型之顯示螢幕。 連Si裝置2°°中’處理器2〇2經由連接21°而操作性地 連接至輸人裝置204且能夠經由連接加自輸 - ㈣入資訊,且經由各別輸出連接212而操作性地連j 螢幕^及輸出裝置細中之至少—者以將資訊輪出至 =-者。導航裝置可包括輸出裝置2。8,例如,聲 讀出裝置(例如,揚聲器)。在輸出農置2〇8可為導航裝置 之使用者產生聲訊資訊的同時,應同等地理解 裝置204亦可包括用於接收輪入語音命令之麥克風:軟 150832.doc -17- 201211508 卜‘航展置2〇〇亦可包括任何額外輸入裝置204及/ 或任何額外輸出裝i,諸如,音訊輸入/輸出裝置。 處理器202經由連接216而操作性地連接至記憶體214, 且=進一步調適以、經由連接22〇自輸入/輸出(1/〇)蜂218接 收貝成/將資訊發送至輸入/輸出^/哨⑽其中㈤蜂⑴ 可連接至在導航裝置20〇外部的I/O裝置222。外部1/0裝置 222可包括(但不限於)外部收聽裝置,諸如,聽筒 (earpi^e)。至1/〇裝置222之連接可另外為至任何其他外部 、置(諸如几車立體聲單元)之有線或無線連#,以用於(例 如)免持操作及/或用於語音啟動之操作、用於連接至聽筒 或頭戴式耳機及/或用於連接至(例如)行動電話,其中行動 “連接可用以建立在導航裝置2〇〇與(例如)網際網路或任 可八他力路之間的貧料連接,及/或用以建立經由(例如)網 際網路或某一其他網路至伺服器之連接。 導航裳置200之記憶體214包含非揮發性記憶體之—部分 (例如以儲存程式碼)及揮發性記憶體之一部分(例如以在: 式碼被執行時储存資料)。該導航裝置亦包含埠以,該璋 經由連接230而與處理器202通信,以允許可抽換式記 憶卡(通常被稱作旬被添加至裝置2〇〇。在所描述之實施例 中,該埠經配置成允許添加SD(安全數位)卡。在其他實施 例中,料可允許連接其他格式之記憶體(諸如,B) Direction information. The past, known as NAVSTAR2Gps, incorporates a number of satellites that operate around the Earth in extremely precise ways. Based on these precise orbital GPS hygiene, the location can be relayed to the receiving unit as a Gps data. However, it should be understood that a global positioning system such as gl〇SNass, European Galileo positioning system, c〇MpASS positioning system or deleted (India regional navigation satellite system) may be used, when equipped to receive GPS The device of the data begins to scan the radio frequency to discover the GPS satellite signal 'implementation of the GPS system. After receiving a radio signal from a GPS satellite, the device determines the exact location of the satellite via one of a plurality of different conventional methods. In most cases, the device will continue to scan to find the signal until it has acquired at least three different satellite signals (note that other triangulation techniques can be used to determine the position by only two letters, although this is very example). In the case of performing geometric triangulation, the receiver uses three known locations to determine its own two-dimensional position relative to the satellites. This greening can be done in a known manner. In addition, obtaining a fourth satellite signal allows the receiving device to know the geometric calculation to calculate its three-dimensional position. Unlimited number of users = Instantly update location and speed data. 15〇832.d〇c -15- 201211508 As shown in FIG. 1, the GPS system 1 includes a plurality of satellites 102 that operate around the Earth 1 〇4. The GPS receiver 1 〇 6 receives GPS data as a spread spectrum GPS satellite data signal 1 〇 8 from a plurality of satellites of the plurality of satellites 102. The spread spectrum data signals 1 〇 8 are continuously transmitted from each satellite 102, and each of the transmitted spread spectrum data signals 108 includes a data stream including information identifying the particular satellite 1 〇 2 from which the data stream originated. The GPS receiver 106 typically requires spread spectrum data signals 1 〇 8 from at least three satellites 102 to be able to calculate a two dimensional position. The receipt of the fourth spread spectrum data signal enables the Gps receiver 106 to calculate the three dimensional position using known techniques. Thus, the GPS system allows a user of a device with gps receiver 1 〇 6 to determine its position on the earth to within a few meters. In order to utilize this capital. Hole, $ see practices rely on an electronic map that allows the location of the user to be displayed on it. Providers such as TeleAtlas (http://www.teleatlas.c〇m) provide examples of such maps. These electronic maps not only allow the use of the Gps system (or by other means) to display the user's location on the electronic map, but also allow the user to plan the travel route and its likes (the route selection is intended for this route planning, The electronic map is processed by a navigation device provided by the navigation computing device. Specific examples of the navigation device include a satellite navigation device (s), which is conveniently referred to as a portable navigation device (PND). However, it should be remembered that the present invention is limited to Instead, it can be changed to #处理的处理的的处理装置. Therefore, any functionality can be seen from this; Tian T see, in the context of this application J50832.do, -16· 201211508 : Devices: To include (but not limited to) any type of route planning and navigation, the device is embodied as a PND, a transporter such as a car, and a portable computing resource (eg, carrying out route planning and navigation software; Ϊ Personal computer (PC), mobile phone or personal digital assistant (and) or servo@ 'or other computing devices that provide this functionality across the network. • _ 3a and FIG. 4b show an example of a navigation device in the form of a PND, and it should be noted that the block diagram of the navigation device 2 does not include all components of the navigation device' but only many examples A representative of the component. The guide is located in the outer casing (not shown) - the navigation device navigation device 2 includes a processing circuit including, for example, the processor 2〇2 mentioned above, the processing Cry 2〇2 to connect to input device 2〇4 and display device (10), for example, display screen 206): = here refers to input device 2〇4 in singular form, but those skilled in the art should understand that input device 2〇 4 denotes any number of input device keyboard devices, voice input devices, touch panels and/or any other known input device for inputting. Similarly, display honor screens 2〇6 may include various such as liquid crystal display 7^ Any type of display screen of the LCD (LCD). In the case of a Si device 2°°, the processor 2〇2 is operatively connected to the input device 204 via a connection 21° and can be input via the connection - (4) information. And operatively connected to J through the respective output connection 212 And at least the output device is fined to turn the information out to =. The navigation device may include an output device 2. 8. For example, an acoustic reading device (for example, a speaker). While generating audio information for the user of the navigation device, it should be equally understood that the device 204 can also include a microphone for receiving a round-in voice command: Soft 150832.doc -17- 201211508 卜 'Air Show 2 〇〇 can also include Any additional input device 204 and/or any additional output device, such as an audio input/output device. Processor 202 is operatively coupled to memory 214 via connection 216, and = further adapted to input via connection 22 The /output (1/〇) bee 218 receives the message/sends the information to the input/output ^/whistle (10) where (5) the bee (1) can be connected to the I/O device 222 outside the navigation device 20A. External 1/0 device 222 may include, but is not limited to, an external listening device, such as an earpiece. The connection to the 1/〇 device 222 may additionally be a wired or wireless connection to any other external, such as a few car stereo units, for, for example, hands-free operation and/or for voice-activated operations, For connection to an earpiece or headset and/or for connection to, for example, a mobile phone, where the action "connection is available to establish on the navigation device 2" and, for example, the Internet or any of the eight-powered roads The connection between the poor material and/or the connection to the server via, for example, the Internet or some other network. The memory 214 of the navigation device 200 contains a portion of the non-volatile memory ( For example, to store a code and a portion of the volatile memory (eg, to store data when the code is executed). The navigation device also includes communication with the processor 202 via connection 230 to allow A removable memory card (generally referred to as a device is added to the device 2〇〇. In the depicted embodiment, the port is configured to allow the addition of an SD (Secure Digital) card. In other embodiments, the material may be allowed Connect to other formats of memory (Such as,

Fid (CF)卡、Mem〇ry如心、⑼記憶卡、咖(通用率 列匯流排)隨身碟、MMC(MultiMedia)卡、8職她仙卡、 Mic^odnve,或其類似者)。 150832.doc -18- 201211508 圖2s兒明經由連接226的在處理器202與天線/接收器224 之間的刼作性連接,其中天線/接收器224可為(例如)Gps 天線/接收器’且因而將充當圖1之Gps接收器1〇6。應理 解,為了說明而示意性地組合由參考數字224表示之天線 及接收益,但天線及接收器可為單獨定位組件,且天線可 : 為(例如)GPS片狀天線或螺旋天線。 另外,圖3及圖4之攜帶型或手持型導航裝置2〇〇可以已 &方式連接或「銜接」至諸如腳踏車、機車、汽車或船之 運輸工具。可接著將此導航裝置自銜接位置移除以用 於攜γ型或手持型導航用途。實際上,在其他實施例中, 裝置2 0 G可經配置為手持型的以允許使用者之導航。 參看圖3a,導航裝置2〇〇可為包括整合式輸入及顯示裝 置206及圖3a之其他組件(包括但不限於,内部Gps接收器 處理态202、電源供應器(未圖示)、記憶體系統214等 等)的單元。 ❹ 導航裝置200可位於臂狀物252上,可使用吸盤254將臂 狀物252本身緊固至運輸工具儀錶板/窗/等等。此臂狀物 252為銜接台之一實例’導航裝置2〇〇可銜接至其。可藉由 將導航裝置2GG搭扣連接至臂狀物252而將導航裝置細銜 接或=其他方式連接至銜接台之臂狀物導航裝置細 可接著可在臂狀物252上旋轉。為了釋放導航裝置2〇〇與銜 接台之間的連接,可(例如)按麼導航裝置200上之按紐(未 圖不)。用於將導航裝置2〇〇耦接至銜接台及將導航裝置 2〇0與衡接台去輕之其他同等合適的配置係-般熟習此項 150832.doc •19· 201211508 技術者熟知的。 轉至圖3b,處理器2〇2與記憶體214合作以支援则§(基 本輸入/輪出系統)282 ’其充當導航裝置2〇〇之功能硬體垣 件28〇與由該裝置執行之軟體之間的介面。處理器2〇2接著 自記憶體2U載入作業系、統284 ,該作業系統m提供應用 程式軟體286(其實施所描述之路線規劃及導航功能性中的 一些或全部)可執行之環境。應用程式軟體286提供一作業 環境,該作業環境包括支援導航裝置之核心功能(例如了 地圖檢視、路線規劃、導航功能及與此相關聯之任何其他 功能)的圖形使用者介面(GUI)。就此而言,應用程式軟體 286之部分包含視圖產生模組288。 在所描述之實施例中,導航裝置之處理器2〇2經程式化 以接收由天線224接收到的GPS資料,且不時地將彼Gps資 料連同表示GPS資料被接收的時間之時戳一起儲存於記憶 體214内以積累導航裝置之—系列位置。經如此儲存之每 一貧料記錄可被認為是GPS定位;亦即,其為導航裝置之 所在地之定位且包含緯度、經度、時戳及精確性報告。此 系列位置可被認為是定位資料。 在一實施例中,實質上週期性地(例如,每5秒)儲存資 料。熟習此項技術者應瞭解,其他週期將為可能的,且I 資料解析度與記憶體容量之間存在平衡;亦即,隨著藉由 採取更多樣本而使資料之解析度增加,需要更多記憶^來 保持資料。然而,在其他實施例中,解析度可為實質上 母:1秒、1 0秒、1 5秒、2 0秒、3 0秒 45秒、1分鐘、2 5 \50832.doc -20- 201211508 分鐘(或實際上,此等 置之記憶體内,積之間的任何週期)。因此,在裝 錄。 積累了裝置200在各時間點處之行蹤之記 Ο Ο 期二些Γ例中,可發現,所捕獲之資料之品質隨著週 m且同時降級之程度將至少部分地視導航裝 之速度而定(約略15秒之週期可提供合適上限)。 另外,處理器202經配置成不時地將裝置200之行蹤之記 錄(亦即,吧資料及時戮)上載至舰器。在導航裝置扇 ”有將其連接至飼服器的永久的或至少通常存在的通信 頻道之――些實施例中’週期性地發生資料之上载(其可為 (例如)每24小時-次)。熟習此項技術者應瞭解,其他週期 為可能的’且可實質上為以下週期 30分鐘、每小時、每2小時、每5小時、每12小時每2 =、每週或在此等週期之間的任何時間。實際上,在此等 只細例+ ’處理器202可經配置成實質上即時地上載行蹤 之記錄’但此可不可避免地意謂事實上資料被不時地發射 而在發射之間具有相對較短週期,且因而資料可被較為正 確地5忍為疋偽即時的。在此等偽即時實施例中,導航裝置 可經配置以在記憶體214内及/或插入於埠228中的卡上緩 衝GPS疋位,且當已儲存預定數目時發射此等GPS定位。 此預定數目可為大約2〇、36、1〇〇、2〇〇,或此等數目之間 的任何數目。熟習此項技術者應瞭解,該預定數目部分地 由記憶體214/埠228内之卡之大小控管。 在不具有通常存在之通信頻道之其他實施例中,處理器 150832.doc ‘21 201211508 可經配置成在通信頻道被產生時將記錄上載至伺服器。此 可(例如)在導航裝置200連接至使用者之電腦時發生。再一 次,在此等實施例中,導航裝置可經配置以在記憶體 内或插入於埠228中的卡上緩衝GPS定位。若記憶體214或 插入於埠228中的卡變得充滿GPS定位,則導航裝置可經 配置以刪除最舊的GPS定位,且因而,其可被認為是先進 先出(FIFO)緩衝器。 在所描述之實施例中,行蹤之記錄包含一或多個跡線, 其中每一跡線表示導航裝置2〇〇在24小時週期内之移動。 每24小時週期經配置成與日曆日一致,但在其他實施例 中’不一定為此狀況。 伺服器150經配置以接收裝置之行蹤之記錄,且將此儲 存於大容量資料儲存器内以供處理。因此,隨著時間過 去,大容量資料儲存器累積了已上載資料的導航裝置2〇〇 行從之複數個δ己錄。大體而言,伺服器將收集複數個導 航裝置200之行縱。 伺服器可接著經配置以根據該裝置或每一裝置之所收集 之行蹤而產生速度資料。此速度資料可包含時變速度概 • /、展示著地圖之可導航段之平均速度如何隨著時間 變化。 圖7展示電子地圖之一實例,在所描述之實施例中,跨 越網路(在此狀況下為網際網路)在導航裝置上檢視該電子 地圖。在本文中所描述之實施例中的任一者中之第一步驟 為產生此電子地圖 19〇〇。可在 hUp://r〇utes.t〇mt〇m.c〇m/?Lid= 150832.doc •22· 201211508 l#/map/?center=55.01%2C-3.445&ZO〇m=4&map=basic 檢視 該地圖。 為了使圖7之電子地圖用於路徑選擇之目的,該電子地 圖具有一系列節點,該電子地圖之使用者通常看不到該等 節點。因而,節點等等可通常被稱作地圖資料。然而,為 了便於理解,在圖6中展示節點3〇〇中之一些節點。在可導 航段(在此狀況下,道路段)之交叉點、末端區等等處提供 此等節點,且此等節點被用於路徑選擇之目的。當使用者 要求其導航裝置規劃在兩個或兩個以上點之間的路線時, 該導航裝置規劃地圖之相關節點之間的路線。因而,地圖 資料可用以根據由導航裝置之使用者設定的至少一準則來 產生路線。 熟習此項技術者應瞭解,電子地圖亦包含提供道路段之 形狀、建築物之入口之所在地等等之其他節點。 因此,每一節點300具有自其發出的、使用者可沿其行 〇 it的至少早個道路段,且通常為複數個道路段。舉例而 。,即點302具有四個該種道路段3〇4&、3〇讣、3〇补' 3_。在其他實施例_ ’可導航段可表示並非道路之路徑 之&諸如,人行道、腳踏車道、渠道、鐵路路段、軌道 或其類似者。然而,為方便起見’參考道路段。因此,如 斤展示之地圖向其使用者展示複數個道路段,該 =個道路段中之每一者表示在由該地圖覆蓋之區域中的可 導航路線之—部分。 吾人已知路線規劃方法(諸如,卿伽方法、A*方法或 150832.doc -23· 201211508 M_/Pape方法)。然而,此等路線規劃方法在計算 方面可為極其慢的。在us 6 636 8〇〇中展示了如何可曰口 此路線規劃之速度之實例,該案之教示在此以引用的二 併入本文。 & 本文中所描述之實施例在預處理步驟中產生含有最小成 本資料之所謂的側樓案(side file),該最小成本資料係由導 航裝置使用以在處理電子_時加速路線之產生。可將此 育訊以可被稱為位元向量之形式保持為二進位資料;亦 即〇與1之串。目巾,該側樓案亦可被認為是地圖資料’,、 但可與電子地圖一起或不與電子地圖一起供應側檔案⑼ 如’如圖7中所展示)。因此,本發明之一些實施例可將地 圖貢料提供為可與側檔案分離之地圖,而本發明之其他實 施例可組合地圖與側檔案資料。 然而’熟習此項技術者應瞭解,若使用側檔案,則該側 播案應與電子地圖(針對其而產生該側檔案)一起使用。若 並未執行此,則可想像,將獲得不正確路線(例如,未使 由其使用者設定之成本公式最小化之路線)。 又,本發明之不同實施例可指定用於產生最小成本資料 之不同參數(在此實施例中,為一系列位元向量)。因而, 若使用所產生之地圖資料之後續路線規劃使用了與用以產 生最小成本資料之彼等參數不同的參數,則最小成本資料 不太可能對於彼路線規劃有用。 舉例而言,一些實施例可產生用於穿過地圖乘汽車行進 之最小成本資料。若後續路線規劃係用以產生用於步行之 150832.doc -24· 201211508 路線一貝κ飞車特定的最小成本資料不太可能為有用的。在 另-實财,—些實施例可產生在假定使用者樂於沿著高 速么路、收費道路等等行進的情況下之最小成本資料。在 後㈣線規劃中,若使用者請求不利用高速公路、收費道 路寺等之路線,㈣最小成本資料不太可能為有用的。 Ο 八本:月t些實施例可產生最小成本資料之複數個集 & 各自具有敎準則之不同集合。舉例而言,本發明 之實施例可約略產生以下各項中之者:2、3、4、卜 6 1〇 15,或更多集合的最小成本資料。 因此’在-些實施射且為了產线财,在地圖預處 理步驟中,將節點劃分到複數個區中,且因而,任何地圖 被劃分成已知數目個區·例如’ __且確定該等區之間的 最小成本路徑。此預處理產生可與地圖一起利用之資料以 便增加路線規劃方法之速度。 ❹ 通常’在使用地圖諸之前執行預處理,而不管該地圖 貧料將用於web網站上或是用於諸如聊之裝置上。因 而,預處理步驟常常被稱作伺服器側處理程序。 雖然任何通料算裳置皆將適於執行聽理,但孰習此 項技術者應瞭解,裝置之效能愈高,預處理執行得俞快 速。通常,將规架構計算袭置用於預處理。此種χ86架 構裝置通常執行諸如Micr〇s〇ftTM Wind〇wsTM、υΝΐχ、 LINUX、〇SXtm等等之作業系統(〇s)。然而,其他實施例 可使用諸如RISC架構之其他計算平台。 又’如別處所論述,可平行執行預處理,且目*,可在 150832.doc -25- 201211508 複數個計算装置上或至少. 又芏v在禝數個處理器核心 擬或真實處理器核心、)上執行預處理。 為虛 作為下一預處理步驟,處理一 如,304a至304d)以確定1 θ不么内之母一逼路段(例 )確疋其疋否為至該地圖内之Fid (CF) card, Mem〇ry, heart, (9) memory card, coffee (general rate bus) flash drive, MMC (MultiMedia) card, 8th position her fairy card, Mic^odnve, or the like). 150832.doc -18- 201211508 Figure 2s illustrates the operative connection between processor 202 and antenna/receiver 224 via connection 226, where antenna/receiver 224 can be, for example, a Gps antenna/receiver And thus will serve as the GPS receiver 1〇6 of FIG. It is to be understood that the antenna and receiver benefits represented by reference numeral 224 are schematically combined for purposes of illustration, but the antenna and receiver may be separate positioning components, and the antenna may be, for example, a GPS patch antenna or a helical antenna. In addition, the portable or handheld navigation device of Figures 3 and 4 can be connected or "connected" to a vehicle such as a bicycle, locomotive, car or boat. This navigation device can then be removed from the articulated position for use with gamma or handheld navigation. In fact, in other embodiments, device 20G can be configured to be handheld to allow navigation by the user. Referring to FIG. 3a, the navigation device 2 can include an integrated input and display device 206 and other components of FIG. 3a (including but not limited to, an internal Gps receiver processing state 202, a power supply (not shown), a memory Units of system 214, etc.). ❹ The navigation device 200 can be located on the arm 252, which can be fastened to the vehicle dashboard/window/etc. using the suction cup 254. This arm 252 is an example of a docking station to which the navigation device 2 can be coupled. The arm navigation device can be rotated on the arm 252 by snapping the navigation device 2GG to the arm 252 to connect the navigation device or otherwise connected to the arm of the docking station. In order to release the connection between the navigation device 2 and the docking station, a button (not shown) on the navigation device 200 can be pressed, for example. The other suitable configuration for coupling the navigation device 2〇〇 to the docking station and the navigation device 2〇0 to the docking station is familiar to the person 150832.doc • 19· 201211508 is well known to the skilled person. Turning to Figure 3b, the processor 2〇2 cooperates with the memory 214 to support the § (Basic Input/Rolling System) 282' which functions as a function of the navigation device 2 and is executed by the device. The interface between the software. The processor 2〇2 then loads the operating system 284 from the memory 2U, which provides an environment in which the application software 286 (which implements some or all of the route planning and navigation functionality described) can be executed. The application software 286 provides a work environment that includes a graphical user interface (GUI) that supports the core functions of the navigation device, such as map viewing, route planning, navigation functions, and any other functions associated therewith. In this regard, a portion of the application software 286 includes a view generation module 288. In the depicted embodiment, the processor 2〇2 of the navigation device is programmed to receive GPS data received by the antenna 224, and from time to time, along with the timestamp indicating the time at which the GPS data was received, Stored in memory 214 to accumulate the series of locations of the navigation device. Each of the lean records thus stored can be considered a GPS location; that is, it is the location of the location of the navigation device and includes latitude, longitude, time stamp, and accuracy reports. This series of locations can be considered as location data. In one embodiment, the data is stored substantially periodically (e.g., every 5 seconds). Those skilled in the art should be aware that other cycles will be possible and that there is a balance between the resolution of the I data and the memory capacity; that is, as the resolution of the data increases by taking more samples, more Multi-memory ^ to keep the data. However, in other embodiments, the resolution may be substantially female: 1 second, 10 seconds, 15 seconds, 20 seconds, 30 seconds 45 seconds, 1 minute, 2 5 \50832.doc -20- 201211508 Minutes (or indeed, in any memory of this memory, any period between the products). Therefore, it is being loaded. Accumulating the traces of the device 200 at various points in time Ο 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二 二Fixed (approximately 15 seconds period can provide a suitable upper limit). Additionally, the processor 202 is configured to upload the record of the whereabouts of the device 200 (i.e., the data in time) to the vessel from time to time. In the embodiments where the navigation device fan has a permanent or at least commonly existing communication channel that connects it to the feeder, 'the upload of the data periodically occurs (which may be, for example, every 24 hours - times) Those skilled in the art will appreciate that other cycles are possible 'and may be substantially 30 minutes per minute, hourly, every 2 hours, every 5 hours, every 12 hours, every 2 =, weekly or here. Any time between cycles. In fact, only the fine example + 'processor 202 can be configured to upload the track of the track in real time', but this inevitably means that the data is actually transmitted from time to time. While there is a relatively short period between shots, and thus the data can be more accurately corrected, in this pseudo-immediate embodiment, the navigation device can be configured to be in memory 214 and/or The card inserted in the cassette 228 buffers the GPS clamps and transmits the GPS positions when a predetermined number has been stored. The predetermined number may be approximately 2, 36, 1 , 2, or such numbers Any number between them. Those who are familiar with this technology should understand The predetermined number is partially controlled by the size of the card within the memory 214/埠 228. In other embodiments that do not have a communication channel that is typically present, the processor 150832.doc '21 201211508 can be configured to be in the communication channel. The record is uploaded to the server when generated. This can occur, for example, when the navigation device 200 is connected to the user's computer. Again, in such embodiments, the navigation device can be configured to be in memory or inserted The GPS location is buffered on the card in port 228. If memory 214 or a card inserted in port 228 becomes full of GPS positioning, the navigation device can be configured to delete the oldest GPS location and, thus, can be considered Is a first in first out (FIFO) buffer. In the depicted embodiment, the track record contains one or more traces, where each trace represents the movement of the navigation device 2 within a 24 hour period. The hour period is configured to coincide with the calendar day, but in other embodiments 'not necessarily this condition. The server 150 is configured to receive a record of the whereabouts of the device and store this in a large volume data store For processing, therefore, over time, the mass data storage device accumulates the uploaded information of the navigation device 2 from a plurality of δ records. In general, the server will collect a plurality of navigation devices 200. The server can then be configured to generate velocity data based on the collected orbits of the device or each device. The velocity data can include time-varying speeds and/or, showing how the average speed of the map's navigable segments is Time variation. Figure 7 shows an example of an electronic map in which the electronic map is viewed across a network (in this case, the Internet) on a navigation device. The implementation described herein. The first step in any of the examples is to generate this electronic map 19〇〇. Available at hUp://r〇utes.t〇mt〇mc〇m/?Lid= 150832.doc •22· 201211508 l#/map/?center=55.01%2C-3.445&ZO〇m=4&map =basic View the map. In order for the electronic map of Figure 7 to be used for path selection purposes, the electronic map has a series of nodes that are typically not visible to the user of the electronic map. Thus, nodes and the like can often be referred to as map material. However, for ease of understanding, some of the nodes in node 3 are shown in FIG. These nodes are provided at the intersections, end zones, etc. of the navigable segments (in this case, road segments) and are used for path selection purposes. When the user asks his navigation device to plan a route between two or more points, the navigation device plans a route between the relevant nodes of the map. Thus, the map material can be used to generate a route based on at least one criterion set by a user of the navigation device. Those skilled in the art should appreciate that electronic maps also include other nodes that provide the shape of the road segment, the location of the entrance to the building, and the like. Thus, each node 300 has at least an early road segment from which it is issued by the user, and typically a plurality of road segments. For example. , point 302 has four such road segments 3〇4&, 3〇讣, 3〇 complement '3_. In other embodiments, the navigable section may represent a path that is not a path of the road, such as a sidewalk, a pedal lane, a channel, a railway section, a track, or the like. However, for convenience, reference is made to the road segment. Thus, the map displayed by the jin shows a plurality of road segments to its users, each of the = road segments representing a portion of the navigable route in the area covered by the map. I know the route planning method (such as the gamma method, the A* method or the 150832.doc -23· 201211508 M_/Pape method). However, these route planning methods can be extremely slow in terms of calculations. An example of how this route can be planned is shown in us 6 636 8 ,, the teachings of which are incorporated herein by reference. & The embodiments described herein produce a so-called side file containing minimal cost data in a pre-processing step that is used by the navigation device to accelerate the generation of the route when processing the electrons. This communication can be maintained as binary data in the form of a bit vector; that is, a string of 〇 and 1. For the eyeglasses, the side story may also be considered as map material, but the side file (9) may be supplied with or without the electronic map (as shown in Figure 7). Accordingly, some embodiments of the present invention may provide a map tribute as a map that may be separated from a side file, while other embodiments of the present invention may combine map and side file data. However, those skilled in the art should be aware that if a side file is used, the side file should be used in conjunction with an electronic map for which the side file is generated. If this is not done, it is conceivable that an incorrect route will be obtained (for example, a route that does not minimize the cost formula set by its user). Again, different embodiments of the present invention may specify different parameters (in this embodiment, a series of bit vectors) for generating minimum cost data. Thus, if subsequent route planning using the generated map data uses parameters that are different from their parameters used to generate the minimum cost data, the minimum cost data is unlikely to be useful for the route planning. For example, some embodiments may generate minimum cost information for traveling by car through a map. If the follow-up route planning is used to generate a minimum cost data specific for the walking of the 150832.doc -24·201211508 route, it is unlikely to be useful. In another embodiment, the embodiments may produce minimum cost information in the case where the user is willing to travel along a high speed road, a toll road, or the like. In the post-fourth line plan, if the user requests not to use the route of the expressway, toll road, etc., (4) the minimum cost data is unlikely to be useful.八 Eight copies: Some embodiments of the monthly cost can produce a plurality of sets of minimum cost data & each having a different set of 敎 criteria. For example, embodiments of the present invention may approximately produce a minimum cost of 2, 3, 4, 4, 15, or more sets of the following. Therefore, in the case of some implementations and for the production line, in the map preprocessing step, the nodes are divided into a plurality of zones, and thus, any map is divided into a known number of zones, for example, '__ and the determination is made The least cost path between the zones. This pre-processing produces data that can be used with the map to increase the speed of the route planning method. ❹ Normally pre-processing is performed before using the map, regardless of whether the map is used on a web site or on a device such as a chat. Therefore, the preprocessing step is often referred to as a server side handler. Although any of the materials will be suitable for performing the hearing, those skilled in the art should understand that the higher the performance of the device, the faster the pre-processing is. Typically, the architectural calculations are used for preprocessing. Such χ86 gantry devices typically perform operating systems (〇s) such as Micr〇s〇 ftTM Wind〇wsTM, υΝΐχ, LINUX, 〇SXtm, and the like. However, other embodiments may use other computing platforms such as the RISC architecture. And 'as discussed elsewhere, pre-processing can be performed in parallel, and can be performed on multiple computing devices at 150832.doc -25- 201211508 or at least. 芏v in a number of processor cores or real processor cores ,) Perform preprocessing on . For imaginary as the next pre-processing step, the processing is as follows, 304a to 304d) to determine whether the mother-to-force segment of the 1 θ is not in the map.

區(Ν)中之每一區夕县,1 L | a個I #匚之取小成本路徑的部分,且產生位 量(最小成本評估)。因*卜,° ’ U此對於一區内之每一道路段,位 元向量包含針對地圖之每一 母&之位70。亦即,位元向量 修1個位元(除在考慮中的區外,每一區⑽),幻查扭定 成〇或卜此視彼道路段是否形成至由該位元表示之區 小成本路狀部分而定。—些實施例可添加額外位元以提 供另外的資訊,諸士”標頭(header)、可見度區域、相鄰 區域’及其類似者。 熟習此項技術者應瞭解,在此意義上,可對照若干不同 成本準則來確定最小成本路徑。舉例而言,可對照以下; 則中之任-者來判斷最小成本:最短距離;最短行進時 間;花費最小(在環境影響方面);使用最少汽油;產生^ 少co2,f等。在當前實施例中,對照最短行進時間 斷最小成本。 因此,熟習此項技術者應瞭解,對於覆蓋大量區域之地 圖而σ Ν很可此為大的。因此,預處理可花費大旦 ΘΒ '里崎 間。 因此,在(例如)覆蓋西歐及中歐之實例地圖中’通常可 能存在40,000,0〇〇個節點,其具有1〇〇,〇⑽,〇〇〇個道路段。 假定在地圖内存在1〇〇個區,則Ν等於1〇〇,且存在 150832.doc -26- 201211508 100’000’OOOxiOO (N);亦即,需要1〇xl〇9個位元來儲存該 地圖之每一道路段之99(亦即,N-1)個位元。在使用下文 所&述之本發明之實施例的情況下,此地圖可能使用約略 500 Mb的儲存器。 WO2009/053410論述指派速度概況之方法,該等速度概 :況給出隨著時間而變的沿著地圖之可導航段之速度。此申 "月案之内各在此以引用的方式併入本文。因而且出於路徑 選擇之目的,一可導航段是否構成至另一區之最快速路線 之4刀將根據時間而變化。亦即,隨著交通密度增加/減 少(例如,在高峰時間及其類似者),使用一可導航段分別 將變得較不合意/更合意。 一些貫施例可針對每一道路段儲存複數個位元向量。熟 白此項技術者應瞭解,記錄速度之解析度愈高,所需位元 向量之數目愈高。然而,其他實施例可利用時變函數來對 最决速路線作出評估(非常像霤〇2〇〇9/〇5341〇中所描述)。 Q 在跨越電子地圖進行路線規劃時,據信,有必要能夠使 用力略百分之一秒精確度的時間粒度進行路線規劃;亦 即此夠將自一節點之出發時間指定到〇_〇 1秒之精確度以 Γ 便正確地癌定最低成本路線。 因此,在考慮此精確性之等級時,應瞭解,上文所考慮 之=有40,_,刪個節點及1GM⑼,_個道路段之地圖具 有牙過其中之1〇〇 〇〇〇,〇〇〇2個可能的路線。當進一步考慮 時間維度時,路線之# '、災之數目進一步增加:7(亦即,每週天 數)24(亦即,每日小時數)χ36〇〇(亦即,每小時秒數卜1〇〇 150832.doc •27· 201211508 (亦即,每秒之百分之一秒數)xl〇〇,〇〇〇〇〇〇2 = 604.800.〇〇〇·〇〇〇·〇〇〇·〇〇〇.〇〇〇.〇〇〇(千的七乘方)個可能的路 線。在當前處理等級且在使用在每一時間間隔處探索每一 段之單純方法的情況下,將花費19.178.082.191.780 821 年。申請人當前出售的西歐及中歐之地圖具有12〇〇〇〇 〇〇〇 個道路段’從而進一步增加此時間。 因此,應瞭解,為了在預處理階段中儲存並處理資料, 需要大量資料。 因而,本發明之實施例使用技術以便顯著減少預處理之 量。現更詳細地描述此等技術,且本發明之—些實施例可 能利用所有該等技術,而其他實施例可能僅利用該等技術 中之一些技術。 本發明之不同實施例可使用下文所概述之特徵的不同組 合°因而’-些實施例可利用所描述之全部技術以減少資 訊之量。在另-極端’其他實施例可能不利用該等技術當 中任一者以減少資料。 本發明之-些實施例不計算*符合預定準則之道路段的 =元向量-如步驟1902所展示。舉例而言,若不可能以預 疋運輸類別沿著道路段行進,則可能不計算彼等 位元向量。 又^ 因此,在將運輸模式之準則設定成汽車的實例中 不計算以下道路段之位元向量: 此 •鐵路; •存在於地圖資料中的未對應於道路段之段; 150832.doc •28- 201211508 •錯誤(非法)方向上之單行道路; ·=由運輪形式通行之道路段(例如,在考慮汽車之 駕駛性時之行人徒步區、人行道). 網點處之道路段(亦即,不能自道路段避開); :::::減小經考慮以评估道路段是否形成最小成本 網:7:此技術’亦在圖6中展示如圖 =所展示的道路 路’自圖6刪除了對於最小成本評估而言沒有用之道 子=之此減小旨錢供最小子網路,應對該最小 子網路進行最小成本評估。 2學術語中,被留下的且如圖7中說明之網路可被描 =7之道路網路之最大強組成項的不定向表示 ,雙向連接之組成項。藉由將標準技術應用於兩種強連接 =亦稱為雙向連接性)同時適應於道路交通規則(諸如 4.限制及本地准入(localaccess))來確定核心網路。孰習此 =術者應瞭解,強連接性指示在兩個節點之間在兩、個方 向(亦即,自A—B以及B—A)上行進為可能的。 因此,參看圖5與圖7兩者,可目 α 了見,已刪除諸如死胡同 、几餘壤形252等等之無出口的路。然而,應看見在 已被移除之道路段之起點處剩餘有節點(例如,圖7中之 4〇〇)。此情況是由於下文中論述之原因。 在減小至核心網路之後(例如,如圖7中所展示),分割 150832.doc •29· 201211508 核心網路以提供上文所描述之區。在所描述之實施例中, 根據多路弧分離器(multiway㈣separatGr)來分割網路。 熟習此項技術者應瞭解,在此網路中,若由區邊界等分之 道路段(亦即,弧)被移除,則剩餘在任一區中之道路段將 不連接至任何其他區。 刀告丨丨網路-步驟19 0 6 然而,在執行分割之前,進行以下步驟: 1. 獨立地確定並分割島。島傾向於與網路之其他部 分實體上分離,且藉此藉由諸如輪渡鏈路等等的方式而 鏈結。此等以與典型道路段不同的方式表現(亦即,平 均速度顯著降低,等等),且若此等鏈結被包括於分割 中’則該方法不會有像預期一樣好的效能。 2. 收縮由網路中之一個以上節點表示的十字路口、 環形道及其他接點以使得屬於同一十字路口等等之節點 不會落到不同區中。 3·收縮所有可導航段共用相同特性集合(例如,輪 渡、NoDriving、Nothrough等等)之簡單路徑(亦即,不 具有轉彎可能性的兩個節點之間的連接)以減小傳遞至 分割系統之網路之輸入大小。舉例而言,查看圖6,可 將節點308摺疊至道路31〇上。 發月之所為述之貫施例使用分治(divide .and conqUer) 4 ,在 httP://labri.fr/perso/pelegrin/scotch處概述該分 /α方法。本文中所概述之方法劃分地圖以包含若干個區, X專區並不基於地圖之區域,而是係基於區内所含有之節 150832.doc -30- 201211508 點之數目。具有經如此組織之節點具有以下優點:盆可有 助於使使用該等區的路徑選擇更有效率,因為其有助於遞 送具有類似本地搜尋直徑之區。 每一節點具有與其相關聯之包 估 h ID之身分識別號, 且因而,同一區中之節點具有相 π々日叫ID諕。節點屬於在乙 個階層式等級處之區。按 牧…ί貝例,專級〇為粗略等級(用於 長距離路徑選擇)。等級L-1為詳細等級。In each district of the district (Ν), 1 L | a I #匚匚 takes part of the small cost path and generates a quantity (minimum cost estimate). Because of this, for each road segment in a zone, the bit vector contains a bit 70 for each parent & That is, the bit vector is repaired by one bit (except for the area under consideration, each area (10)), and the magic check is determined to be 〇 or whether the road segment is formed to the area indicated by the bit. The cost depends on the road section. - Some embodiments may add additional bits to provide additional information, "headers", visibility areas, adjacent areas 'and the like. Those skilled in the art should understand that, in this sense, The minimum cost path is determined against a number of different cost criteria. For example, the following can be used to determine the minimum cost: the shortest distance; the shortest travel time; the least cost (in terms of environmental impact); the use of minimum gasoline; Produce ^ less co2, f, etc. In the current embodiment, the minimum cost is broken against the shortest travel time. Therefore, those skilled in the art should understand that σ Ν is large for a map covering a large number of areas. Pre-processing can take a long time. 'Risa. Therefore, in the example map covering Western Europe and Central Europe, for example, there are usually 40,000, 0 nodes with 1〇〇, 〇(10), 〇〇〇 Road segment. Suppose there are 1 area in the map, then Ν is equal to 1〇〇, and there is 150832.doc -26- 201211508 100'000'OOOxiOO (N); that is, 1〇xl〇9 bits are required yuan To store 99 (i.e., N-1) bits of each road segment of the map. This map may use approximately 500 Mb of storage in the case of embodiments of the invention described below. WO 2009/053410 discusses a method of assigning a speed profile, which gives the speed of the navigable section along the map as a function of time. This application is hereby incorporated by reference. For the purpose of path selection, the 4 knives of whether a navigable segment constitutes the fastest route to another zone will vary according to time. That is, as traffic density increases/decreases (eg, at peaks) Time and the like), using a navigable segment will become less desirable/more desirable. Some implementations can store a plurality of bit vectors for each road segment. The skilled person should understand that the recording speed The higher the resolution, the higher the number of required bit vectors. However, other embodiments may utilize time-varying functions to evaluate the most determined speed route (much as described in Figure 2〇〇9/〇5341〇). Q. Crossing the electronic ground When planning the route, it is believed that it is necessary to be able to use the time granularity with a precision of one hundredth of a second to perform route planning; that is, it is enough to specify the departure time from a node to the accuracy of 〇_〇1 second.正确 Correctly set the minimum cost route. Therefore, when considering the level of accuracy, it should be understood that the above considerations = 40, _, delete nodes and 1 GM (9), maps of _ road segments have teeth One of them, 〇〇〇 2 possible routes. When the time dimension is further considered, the number of the route # ', the number of disasters is further increased: 7 (that is, the number of days per week) 24 (ie, Daily hours) χ36〇〇 (that is, the number of seconds per hour is 1〇〇150832.doc •27·201211508 (that is, one hundredth of a second) xl〇〇,〇〇〇〇〇 〇 2 = 604.800. 〇〇〇·〇〇〇·〇〇〇·〇〇〇.〇〇〇.〇〇〇 (thousands of seven thousand) possible routes. In the case of the current processing level and using a simple method of exploring each segment at each time interval, 19.178.082.191.780 821 years will be spent. The map of Western and Central Europe currently sold by the applicant has 12 道路 road segments' to further increase this time. Therefore, it should be understood that a large amount of information is required in order to store and process the data in the pre-processing stage. Thus, embodiments of the present invention use techniques to significantly reduce the amount of pre-processing. These techniques are now described in more detail, and some embodiments of the invention may utilize all such techniques, while other embodiments may utilize only some of the techniques. Different embodiments of the present invention may use different combinations of the features outlined below. Thus, the embodiments may utilize all of the techniques described to reduce the amount of information. Other embodiments may not utilize any of these techniques to reduce data. Some embodiments of the present invention do not calculate the =-element vector of the road segment that meets the predetermined criteria - as shown in step 1902. For example, if it is not possible to travel along a road segment with a pre-shipped transport category, then their bit vectors may not be calculated. And ^ Therefore, the bit vector of the following road segments is not calculated in the example of setting the transport mode criteria to the car: • Railway • The segment that exists in the map data that does not correspond to the road segment; 150832.doc • 28 - 201211508 • A one-way road in the wrong (illegal) direction; • a road segment that is in the form of a transport wheel (for example, a pedestrian walking area or a sidewalk when considering the driving sex of a car). A road segment at the outlet (ie, Cannot avoid from the road section; ::::: Reduce the consideration to assess whether the road segment forms the minimum cost network: 7: This technology 'also shows the road road shown in Figure = Figure 6 from Figure 6 The path that is not useful for the minimum cost assessment is removed = this reduction is for the smallest subnet, and the minimum subnet should be evaluated for minimum cost. In the 2 terminology, the network that is left and as illustrated in Figure 7 can be described as the undirected representation of the strongest component of the road network, the component of the two-way connection. The core network is determined by applying standard techniques to two strong connections (also known as two-way connectivity) while adapting to road traffic rules such as 4. restrictions and local access. This is the case. The surgeon should understand that strong connectivity indicates that it is possible to travel between two nodes in two directions (ie, from A-B and B-A). Therefore, referring to both Fig. 5 and Fig. 7, it can be seen that the exit-free road such as a dead end, a few 252, and the like has been deleted. However, it should be noted that there are nodes remaining at the beginning of the road segment that has been removed (for example, 4〇〇 in Figure 7). This situation is due to the reasons discussed below. After reducing to the core network (eg, as shown in Figure 7), the 150832.doc •29·201211508 core network is partitioned to provide the zones described above. In the described embodiment, the network is segmented according to a multi-channel arc splitter (multiway (s) separatGr). Those skilled in the art will appreciate that in this network, if a road segment (i.e., an arc) that is equally divided by a zone boundary is removed, the remaining road segment in either zone will not be connected to any other zone. Knife Warning Network - Step 19 0 6 However, before performing the split, perform the following steps: 1. Determine and divide the island independently. The island tends to be separated from other parts of the network and is thereby linked by means such as a ferry link. These are expressed in a different way than typical road segments (i.e., the average speed is significantly reduced, etc.), and if such links are included in the segmentation, then the method will not perform as well as expected. 2. Shrink the intersections, roundabouts, and other junctions represented by more than one node in the network so that nodes belonging to the same intersection, etc. do not fall into different zones. 3. Shrink all the navigable segments to share a simple path of the same set of features (eg, ferry, NoDriving, Nothrough, etc.) (ie, the connection between two nodes without the possibility of turning) to reduce the transfer to the segmentation system The input size of the network. For example, looking at Figure 6, node 308 can be folded onto road 31. The method of using the divide and treat (divide .and conqUer) 4 for the description of the month is summarized in httP://labri.fr/perso/pelegrin/scotch. The method outlined in this paper divides the map to include several zones, and the X zone is not based on the map area, but is based on the number of sections 150832.doc -30- 201211508 contained in the zone. Having a node so organized has the advantage that the basin can help make the path selection using the zones more efficient because it facilitates the delivery of zones having similar local search diameters. Each node has an identity identification number associated with its associated hID, and thus, the nodes in the same zone have a phase π 叫 叫 ID. The nodes belong to the area at the level of the two levels. According to the grazing case, the special level is a rough level (for long distance path selection). Level L-1 is a detailed level.

可方便地對節點之最大數目設定上限且允許低於此上限 之某種靈活性’而非設定任一區内含有的節點之絕對數 目。舉例而言’該方法可指定每區最大節點數目為1〇〇 個’此可導致每區通常有60個節點至1〇〇個節點的節點散 佈。上限被認為比固定數目個節點有利,因為固定數目可 導致具有強制形狀之區,此又導致在使用該等區時之次最 佳的路徑選擇。 多個等級 在所描述之實施例中,執行分割以提供複數個等級的巢 式區,在圖9中在概念上舉例說明其。自圖9應清楚,存在 階層式本質,其中將最低等級(〇)再分以提供等級1,又將 等級1再分以提供等級2。 每一區中之節點之數目在等級之間變化,且與較低等級 相比’較粗略等級(其傾向於覆蓋較大地理區域)具有更多 節點。因而,通常出於長程路徑選擇目的而使用所描述之 實施例中的較粗略等級(例如,等級0),而較精細等級(例 如,等級2)用於短程之路徑選擇。 150832.doc •31 · 201211508 每—道路段之位元向量 每—去少ν 刀包含針對該等等級中之 母者之位元”立元之數 盔 甘寺級中之區之數目。 马了提供要編碼之資粗县 ^1的概念(在一典型實施例中, 寻級之數目將通常為L=3): •全球等級=0,將通常具有1〇〇個區。 •中間等級=1,將通當 ^ 通吊針對荨級〇之每一區具有10個區 (亦即,100x10)。 •最詳細等級=2,將通常針對等犯之每一區具有5個區 (亦即,100x10x5)。 使用階層式等級為有 啕扪的因為其減小(可能顯著減小) 所W之處理量。在所描述奋 4 ·<►田刖貝施例中,存在i 〇〇 x i 0 x 5 個區(亦即,5〇〇〇個區)。 U此在具有相同數目個區之扁 …結構中,將需要本文中所概述的方法涉及5000個區。然 而在本文中所描述之實施例中,可藉由參考處於適當等 級中之節點來減少此數目。 一旦已知地圖之各個因素,則等級之數目及每等級之區 之數目將通常被調節。舉例而言,多少儲存器可被分配給 地圖及路徑選擇之應有執行速度。熟習此項技術者應瞭 存在折衷,因為隨著預處理之量增加,則地圖大小 變得較大以保持資料’但是可使用彼地圖來計算較快速路 線。 在—實施例中,存在3個等級之區。然而,在其他實施 〇中可此存在任何數目個等級。舉例而言,可能約略存 在以下數目個等級中之任一者:1、2、4、5、6、7、8、π 150832.doc •32- 201211508 或ίο。 因此, 在使用上文 100,〇〇〇,〇〇〇個道路段之 用最單純編碼將針對每 大小編碼,且針對每— 元向量(arp旗標)。因此 如下: 之實例(通常具有4〇,〇〇〇,〇〇〇個節點及 西歐及中歐的地圖)的情況下,使 —等級之每一節點之區ID使用固定 等級之每一道路段使用固定大小位 ’可易於將此基本編碼之大小計算It is convenient to set an upper limit on the maximum number of nodes and allow some flexibility below this upper limit' instead of setting the absolute number of nodes contained in either zone. For example, the method can specify that the maximum number of nodes per zone is 1 ’ 'this can result in a node spread of typically 60 nodes to 1 node per zone. The upper limit is considered to be advantageous over a fixed number of nodes, as a fixed number can result in zones with forced shapes, which in turn leads to the second best path selection when using the zones. Multiple Ranks In the described embodiment, segmentation is performed to provide a plurality of levels of nested regions, which are conceptually illustrated in FIG. It should be clear from Figure 9 that there is a hierarchical nature in which the lowest level (〇) is subdivided to provide level 1, and level 1 is subdivided to provide level 2. The number of nodes in each zone varies between ranks and has more nodes than the lower ranks (which tend to cover larger geographic regions). Thus, the coarser level (e.g., level 0) of the described embodiment is typically used for long-range path selection purposes, while the finer level (e.g., level 2) is used for short-range path selection. 150832.doc •31 · 201211508 The number of bits per road segment—every less ν knives contain the number of bits for the mother in those ranks. The concept of the capital county to be coded is provided (in an exemplary embodiment, the number of homing will typically be L = 3): • Global level = 0, which will typically have 1 area. • Intermediate level = 1. There will be 10 zones (ie, 100x10) for each zone of the 荨 〇 。 • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • , 100x10x5). The use of the hierarchical level is flawed because it reduces (possibly significantly reduces) the amount of processing. In the description of the Fen 4 ·<►田刖贝example, there is i 〇〇xi 0 x 5 zones (ie, 5 zones) U. In a flat structure with the same number of zones, the method outlined in this paper would be required to involve 5000 zones. However, as described in this article In embodiments, this number can be reduced by reference to nodes in the appropriate level. Once the various factors of the map are known, The number of levels and the number of zones per level will usually be adjusted. For example, how many stores can be assigned to maps and path selections should have a speed of execution. Those skilled in the art should have a compromise because As the amount of processing increases, the map size becomes larger to maintain the data 'but the map can be used to calculate the faster route. In the embodiment, there are 3 levels of zones. However, in other implementations, this may exist. Any number of levels. For example, there may be approximately one of the following number of levels: 1, 2, 4, 5, 6, 7, 8, π 150832.doc • 32- 201211508 or ίο. Using 100 above, 〇〇〇, the simplest encoding for each road segment will be coded for each size, and for each meta-vector (arp flag). So as follows: Example (usually with 4 〇, 〇 〇〇, in the case of a node and a map of Western and Central Europe, the area ID of each node of the level is fixed using a fixed size bit for each road segment of the fixed level. Count

等級0處之每一節點區ID將使用i〇g_2(100)位元個 位元 •等級1處之每-節點區ID將使用l〇g—2(i 0)位元=4個位元 •等級2處之每一節點區ID將使用log—2(5)位元=3個位元 等、及〇處之每一位元向量(arp旗標)將使用1 〇〇個位元 (100個區減去針對當前區的1) 等級1處之每一位元向量(arp旗標)將使用〖〇個位元(i 〇 個區減去針對當前區的i) •等級2處之每一位元向量(arp旗標)將使用5個位元(5個 區減去針對當前區的1) 圖9展示最粗略等級的區6〇〇,其在該圖中提供6個區1至 6。將此等區中之每一者再分成另外的區(在此實施例中, 九個子區),如由粗略等級區6〇〇内的虛線道路段表示。在 所描述之實施例中,使用另一等級之再分,其中亦再分由 虛線道路段提供的區中之每一者,因而提供三個等級之分 割’但為了便於參考未在圖9中展示此等等級。其他實施 例當然可使用更多等級(例如,4、5、6、7個或更多等級) 150832.doc -33· 201211508 或更少等級(例如,1或2個等級)。 因此,本發明之實施例針對較精細等級區引入所謂的可 見度區域,步驟1908。k區之可見度區域為(匕丨)區之集 合,其中可在旗標集合中之該區自己的位元上區別該區。 自然地,可見度區域總是包括給定k區所屬於的(k—丨)區。 另外,其可能含有一些相鄰的(k_1}區。應在預處理期間計 异可見度區域,且將可見度區域與位元向量相關聯地儲 存。 亦可自相反側看出k區與其(k-1)等級的可見度區域之間 的關係:每一個(k-Ι)區知曉其由位於鄰域等級區組成 的外圍(outskirt)。以此方式,可看出道路段之旗標集合不 再貫穿整個地圖具有固定長度;實情為,每一個丨區中之 位元向量具有其特定長度A+B+c+N外圍〇+N外圍丄。其中A 指代區之最粗略等級,B指代中間粒度區,且c指代最精 細粒度之區(在存在三個等級之實施例中)。 後續預處理在最短路徑計算之前計算可見度區域以產生 位元向量。可將找到可見度區域之方法描述如下: 對於每一 k區,開始在區相鄰圖中之廣度優先搜尋; 接著對於每一到訪過之k區(其位置足夠接近開始區), 將其含有的(k-1)區添加至可見度區域。 接近」關係應將地理量度(例如,區中值點之間的距 離)與圖理論距離兩者考慮在内。(因此,若一區在地理 上為遠的但藉由快速連接而鏈結至當前區,則該區可為 接近」的同木κ,若難以在區之間行進,則一區可被 150832.doc •34- 201211508 認為「遙遠的」(即使其在地理上接近))。 確切的臨限值可經受實驗調節,因為其視地圖特定之特 性(如都市區域之平均直徑)而定,其最易受上文所描述之 負面效應(諸如,增加之預處理等等)影響。具有格外長行 進時間之可導航段(如輪渡或NoDriving道路段)在相鄰圖遍 歷(adjaceny graph traversal)期間被隱藏,這樣可見度區域 總是限於單個島或屬於同一區之小群島。 因此,在廣度優先搜尋期間到訪過之區構成及之鄰域。 完全覆蓋該鄰域之下一較粗略等級之區的包括最小 (inclusion-minimal)集合被稱為及之可見度區域。反向關係 被稱為附近(vicinity) ··區β(等級[處)之附近清單係由在等 級丄+7處的在其可見度區域中有g之所有區組成。 為了提供特定實例,且參看圖9,可見度區域之實例係 如下: 右決定每一 1區與其可見度區域之邊緣之間的最小距離 應為至少1,則一些選定i區之可見度區域將由以下〇區組 成(自己的0區可被省略,因為其總是存在): • 15: (亦即,等級1區第15號不具有可見度區域,因為其在其 等級0區的中心處)。 、 • 28: 5Each node area ID at level 0 will use i〇g_2(100) bits. • Each node area ID at level 1 will use l〇g-2 (i 0) bits = 4 bits. • Each node area ID at level 2 will use log-2 (5) bits = 3 bits, etc., and each bit vector (arp flag) will use 1 unit of bits ( 100 areas minus 1) for the current zone. Each bit vector (arp flag) at level 1 will use 〇 one bit (i 〇 zones minus i for the current zone) • level 2 Each bit vector (arp flag) will use 5 bits (5 areas minus 1 for the current area). Figure 9 shows the most coarse level of area 6〇〇, which provides 6 areas in the figure. To 6. Each of these zones is subdivided into additional zones (in this embodiment, nine subzones), as indicated by the dashed road segments within the coarse grade zone 6〇〇. In the described embodiment, another level of subdivision is used, which is also subdivided into each of the zones provided by the dashed road segment, thus providing a three-level segmentation 'but not for ease of reference in FIG. Show these levels. Other embodiments may of course use more levels (e.g., 4, 5, 6, 7 or more levels) 150832.doc -33.201211508 or less (e.g., 1 or 2 levels). Thus, embodiments of the present invention introduce a so-called visibility region for a finer level zone, step 1908. The visibility area of the k zone is a collection of (匕丨) zones in which the zone can be distinguished on its own bit in the flag set. Naturally, the visibility area always includes the (k-丨) region to which a given k-region belongs. In addition, it may contain some adjacent (k_1} regions. The visibility region should be counted during preprocessing, and the visibility region should be stored in association with the bit vector. It can also be seen from the opposite side that the k region and its (k- 1) The relationship between the visibility areas of the level: each (k-Ι) area knows its outskirt consisting of the neighborhood level area. In this way, it can be seen that the flag set of the road section is no longer running through. The entire map has a fixed length; the fact is that the bit vector in each region has its specific length A+B+c+N periphery 〇+N periphery 丄. Where A refers to the most rough level, B refers to the middle The granularity region, and c refers to the region of the finest granularity (in the embodiment where there are three levels). Subsequent preprocessing calculates the visibility region to generate a bit vector before the shortest path computation. The method for finding the visibility region can be described as follows : For each k zone, start the breadth-first search in the adjacent map of the zone; then for each visited k zone (the location is close enough to the start zone), add the (k-1) zone it contains to Visibility area. Close The relationship should take into account both geographic metrics (eg, the distance between the median points) and the theoretical distance of the graph. (Thus, if a region is geographically distant, it is linked to the current region by a quick connection. , the area can be close to the same wood κ, if it is difficult to travel between the areas, then a zone can be considered "distant" (even if it is geographically close). The threshold can be subjected to experimental adjustments because it depends on the specific characteristics of the map (such as the average diameter of the metropolitan area), which is most susceptible to the negative effects described above (such as increased pre-treatment, etc.). Navigable segments of exceptionally long travel time (such as ferries or NoDriving road segments) are hidden during adjaceny graph traversal, such that the visibility region is always limited to a single island or a small island belonging to the same region. The area of the area visited during the priority search period. The area including the smallest (inclusion-minimal) set that completely covers the area below the neighborhood is called the visibility area. The inverse relationship is called vicinity. · The neighborhood β (the list of ranks) consists of all the regions at level 丄+7 with g in its visibility region. To provide a specific example, and see Figure 9, the example of the visibility area is as follows: Right determines that the minimum distance between each 1 area and the edge of its visibility area should be at least 1, then the visibility area of some selected i areas will be composed of the following areas (the own 0 area can be It is omitted because it always exists): • 15: (ie, Level 15 No. 15 does not have a visibility area because it is at the center of its Level 0 area.), • 28: 5

(亦即’等級1區第28號具有為區(等級〇)第5號之單—D 見度區)。 • 37: 2, 5, 6 150832.doc -35· 201211508 (亦即’等級1區第37號具有三個可見度區,其為等級〇 區2、等級〇區5及等級〇區6) 除了考慮等級1區之等級〇鄰居,亦確定每一等級〇區之 專級1鄰居。因此,作為一實例, • 1: 21,24, 27, 28, 41, 42, 43, 51 (亦即,對於等級〇區第1號,等級1區為:21 24,27,41,42,43, 51)。 因此,在此實例中,可看出,區28被列出,儘管其不 在區2之最左側行中。此(例如)可能因為區28具有至區^ 之快速鏈結,且因而當在時間而非距離方面進行考慮時 為接近的。熟習此項技術者應瞭解,可對照諸如環保性 (greenness)(最少c〇2或其類似者)等等之其他量度來判斷 接近性。 鄰居清單之編碼 與圖9相比,圖9a展示可使用之等級的更多細節。等級〇 為最粗略等級且可被認為是等級k-1。為簡易起見,在圖 9a中,僅展示區1至區4(亦即,602 ; 604 ; 606 ; 608)。此 等k-Ι區中之每一者進一步被劃分成9個區(丨至9),其可被 稱作k等級區或等級1區。另外,此等等級1區中之每—者 被劃分成4個k+1等級區(亦即,等級2區)。 位元向量之產生 一旦網路已被分割成三個等級的區,則其經處理以確定 至該等區中之每一者之最小成本路徑且產生區内之每—道 路段之位元向量’步驟1910。因此,如上文所論述,關於 150832.doc -36- 201211508 成本公式來分析任-區内之每―道路段, 至所有其他區之最小成本路徑 《其是否為 道路段之位元向量,如圖7中所展示,為Hi中之每一 不簡化之位元向量。 ’、'解,圖7展 亦應瞭解,最小成本路徑被確定, 間:對:對複數個時間段來計算(如下文中二 Ο ❹ 計算。網路之已被移除之Hi減小之網路)來執行此 節點上與"有效地指疊至其所源於之 Ρ上。舉心言’圖5上所展示之區㈣被 之節點400上。 口 Τ :可:出,每-位元向量包含三攔··含有在考慮中的道 起始處之節點的身分識別號之最左側欄700;含有 在考慮中的道路段之末端處之節點的身分識別號之第二欄 t及含/彼道路段之位元向量之第三欄·。因此,應 可看出每道路段由兩個節點識別,在道路段的每一末 端處存在一個節點。 可使用任何合適路徑選擇方法以確定-道路段是否為最 低成本路線之部分。在此特定實施例中,使用熟知之 Dijkstra方法探索整個網路。 ' 而可藉由使用各種策略來減少處理時間之量。熟習 項技術者應瞭解’上文所描述之用於減小網路之技術亦 將減J處理時間之量。本發明之實施例可使用以下各項中 之任一或多者: • 1^3 ㈣f* 言十 4ki,、 井對應於一區之所有位元向量輸入項。在反向 150832.doc -37- 201211508 圖中,每一邊界節點之最短路徑樹。此方法為有利 、、因為可平行處理母一區,藉此減少處理時間。 •減少對類似最短路徑子樹的重新計算。 •不重新計算已經產生之位元向量。 因此’總之’ 一實施例可執行以下操作以便產生位元向 準備步驟: 如熟習此項技術者應瞭解 有向非循環圖(DAG)表示。 成本及長延伸表)為反向的 ,經由電子地圖之搜尋可由 此圖及伴隨資料結構(轉彎 2·收縮關於最精細等級之簡單道路段(亦即,將末端節 點摺疊至彼此上,如別處所論述)。若道路段由次數= 2 -或多個節點組成(所有節點皆位於給定等級之同 區中)’且可導航段具有相同屬性:例如「。 f=、「W_」及「IsNGDriving」,貝"; 道路段被稱為簡單的。 祝頌(亦即,fr〇m_no e)及/或尾(亦即, :,岣、節點是否屬於該區而定,將道路網路之道銘 段分類成三組:出埠、入埠及内部道路段。亦即,老 碩與尾兩者在同一區内,則道路段 p + 稱為内部道鞋 子又,右頭在區内但尾不在區内,則 , 、道路段被稱為出辞 、路段,且右尾在區中但頭不在區 為入埠道路段。 貝道路編 4·對離開NoThrough及NoDriving區域之鮮 一 &有道路段設立 150832.doc -38- 201211508 特殊轉彎限制。 預處理常式以自下而上方式 > .B 進仃’以最精細分判#鈒 亦p,在所描述之實施例中的等級2起始。在每 區處,針對每一區及重複以下步驟: 專級之 1-確定Λ之探索區域。在最吝 取问等級(例如,所描述之實施 例中之區〇),其為整個圖,(That is, the No. 28 of the No. 1 area has a single-D-visibility area of the No. 5 of the district (grade 〇)). • 37: 2, 5, 6 150832.doc -35· 201211508 (ie, 'Level 1 District No. 37 has three visibility zones, which are Grade Zone 2, Grade Zone 5 and Grade Zone 6 6) The level 1 level of the neighbors, also determines the level 1 neighbor of each level. Therefore, as an example, • 1: 21, 24, 27, 28, 41, 42, 43, 51 (ie, for level 1 area, level 1 area: 21 24, 27, 41, 42, 43, 51). Thus, in this example, it can be seen that zone 28 is listed although it is not in the leftmost row of zone 2. This may, for example, be because zone 28 has a fast link to zone ^ and is therefore close when considered in terms of time rather than distance. Those skilled in the art will appreciate that proximity can be judged against other measures such as greenness (minimum c〇2 or the like) and the like. Encoding of Neighbor Lists Figure 9a shows more details of the levels that can be used compared to Figure 9. Level 〇 is the most coarse level and can be considered as level k-1. For simplicity, in Figure 9a, only Zones 1 through 4 (i.e., 602; 604; 606; 608) are shown. Each of these k-Ι regions is further divided into nine regions (丨 to 9), which may be referred to as k-level regions or level 1 regions. In addition, each of these level 1 areas is divided into four k+1 level areas (i.e., level 2 areas). Generation of a bit vector Once the network has been partitioned into three levels of zones, it is processed to determine the least cost path to each of the zones and to generate a bit vector for each segment of the zone 'Step 1910. Therefore, as discussed above, the cost formula for 150832.doc -36-201211508 is used to analyze the minimum cost path for each road segment in the Ren-Zone, to all other regions, whether it is the bit vector of the road segment, as shown in the figure Shown in 7 is a bit vector that is not simplified for each of Hi. ', 'solution, Figure 7 show should also understand that the minimum cost path is determined, between: pairs: for a number of time periods to calculate (as shown in the following two Ο 。 calculation. The network has been removed Hi reduced network Road) to perform this node with " effectively fingering onto the source from which it originated. In the heart of the word, the area (4) shown on Figure 5 is placed on node 400. Oral: Yes, the per-bit vector contains three bars · the leftmost column 700 containing the identity identification number of the node at the beginning of the track under consideration; the node containing the end of the road segment under consideration The second column t of the identity identification number and the third column of the bit vector containing/the road segment. Therefore, it should be seen that each road segment is identified by two nodes, one at each end of the road segment. Any suitable path selection method can be used to determine if the road segment is part of the lowest cost route. In this particular embodiment, the entire network is explored using the well-known Dijkstra method. ' And by using various strategies to reduce the amount of processing time. Those skilled in the art will appreciate that the techniques described above for reducing the network will also reduce the amount of J processing time. Embodiments of the invention may use any one or more of the following: • 1^3 (4) f* 言10 4ki, the well corresponds to all of the bit vector entries of a zone. In the reverse 150832.doc -37- 201211508 diagram, the shortest path tree for each boundary node. This method is advantageous because the parent zone can be processed in parallel, thereby reducing processing time. • Reduce recalculation of subtrees like the shortest path. • Do not recalculate the bit vector that has been generated. Thus, the 'in total' embodiment may perform the following operations to generate a bit orientation step: As will be appreciated by those skilled in the art, a directed acyclic graph (DAG) representation. The cost and long extension table) are reversed, and the search through the electronic map can be used to map and accompany the data structure (turn 2) shrink the simple road segment about the finest level (ie, fold the end nodes onto each other, such as As discussed in the section), if the road segment consists of the number of times = 2 - or more nodes (all nodes are in the same zone of the given level) 'and the navigable segments have the same attributes: for example ".f=, "W_" and " IsNGDriving", Bay "; The road segment is called simple. Wishing (that is, fr〇m_no e) and / or tail (that is, :, 岣, whether the node belongs to the district, the road network The section of the road is divided into three groups: the exit, the entrance and the inner road section. That is, both the old and the tail are in the same area, then the road segment p + is called the inner road shoe and the right head is in the area. However, the tail is not in the area, then, the road section is called the speech, the road section, and the right tail is in the district but the head is out of the zone is the entry road section. Bay Road 4 · For the fresh one &amp of the NoThrough and NoDriving areas There are road sections set up 150832.doc -38- 201211508 special turn restrictions. The processing routine is in a bottom-up manner > .B 仃 ' at the finest level of 鈒 p p, starting at level 2 in the described embodiment. At each zone, for each zone and repeat The following steps: Level 1 - determine the exploration area of the 。. At the top level (for example, the area in the described embodiment), which is the entire picture,

〜 圚在較精細等級,其為由R 之了見度區域限制之子圖(如上文所描述卜~ 圚 at a finer level, which is a subgraph limited by the visibility area of R (as described above)

/因此,在中間等級(亦即’等級υ處,僅針對含有 被等等級1區的等級〇區之可 片 』見厪&域執行以下步驟。 在等級0(應記住,豆係用 W伸用於長程路徑選擇)處, 整個圖之道路段。 心 收集可見度區域之入淳道路段,亦即,自區域外部 之即點通向該區域内之料段。接著收集邊境道路 段,亦即,纟入埠道路段之後的道路段。若頭(♦ 尾(L2)且不禁止自luL2之轉彎,則將道路段L2稱為 之後(及L1在L2之前)。為了找到邊境道路段,將 複雜十字路口收縮成單節點。輪渡道路段及具有「不 准駕駛(Nerving)」屬性之道路段不被視為邊境道路 以此方式收集入埠道路段可減少(可能顯著減少)在 下文中所描述之探索步驟中所需的處理量。探索步驟 可減少對圖之探索而考慮彼等至給定區之包括入埠路 線的路線。 2.對於及之每一出埠道路段而言,找到根道路段及探索 150832.doc -39- 201211508 步驟之數目。若出埠道路卜 (predecessor)中的至少 又為其位於及内之前置者 道路段為僅有的根道路卩 <唯—後繼者,則此出埠 則,若出蟑道路段為丄且執行單一探索步驟。否 行駛),則將該道路段自 在兩個方向上 單一探索步驟之根道路 '目反(入埠)道路段取作 向的,則將每—前置否:,若出痒道路段為單 :道路幻取作用於單獨探索步驟之根道路/I 後,不官出埠道路段之種 又最 ^ 疋什麼,對於穿過出埠道 路奴之母一交通延伸路徑 ®旱道 (若其位於取 :之起始道路段 ,, 早獨挺索步驟之根道路段。 在較精細等級(亦即’除了等級。之外的 ^特殊對待出璋輪渡道路段。如上文所提及’在碟 之鄰域時,忽略輪渡道路段。若輪渡道路段之頭 部區不屬於R之可見度區域,則將執行單一探索步 驟,其中輪渡道路段為唯—根道路段且探索區域被約 束至頭部區自身。 3·執行經排程之探索步驟(下文中所描述)。 4.追湖自探索區域内之道路段至根道路段之最短路徑。 在除了最高等級(亦即,等級0)之外的所有等級處, 各別追蹤開始於之道路段之排序會影響結果。假設R 為等級L區(其中L>0),則首先處理等級(ε」)區之出 埠道路段,接著處理等級L處之剩餘出埠道路段,並 諸如此類地處理到最精細等級;相對於最精細等級而 150832.doc •40、 201211508 α為内部(且尚未被移除)之道路段被最後處理。 何時遇刹ρ + ± 热’ 要 X#在較早追蹤中到訪過的道路段,皆沒有必 人,口者彼路徑前進。在追縱的同時,設定每一到 (亦段的適當目標位元向量。在除了最高等級 、、及〇)之外的所有等級處,進行額外動作·· 、曾已初次橫穿某等級L區邊界之後,用運輸 ❹ 段旗標標記彼邊界道路段及去往根道路段的所 有其他道路段,· 點 用u形轉彎旗標標記最短路徑進行^形轉彎之節 〇 關矩最=最精細等級外的所有等級處,填充相 圖在ΪΓΓ之所有區之後,針對下-等級而簡化該 著,㈣記為運輸道路段之所有道路段。接 者收細積累的新的簡單路俨·保防 點之節點。 二,保邊被標記為u形轉彎節 最後,根據相關矩陣將位元 前移除的道路b h拓展至在處理此等級之 相關矩陣 定=二:ΐ貫施例使用相關矩陣’其錯存對道路段設 之二間的關係。在除了最精細等級 节寺級L處,產生且使用 ^ ^ 忧用新的相關矩陣。在等級 處,矩陣之列按等級0 + 區編 ^ 21 , 〇 ^ ^ ^ 索弓丨,行按等級L·區編索 母一矩陣輸入項為零或零個以上等級糾;區之集 150832.doc •41 - 201211508 合。在較低等級處,大多數矩陣輸入項等於空集,亦即, 矩陣為稀疏的。 ^ ^關矩陣之目的為幫助對已在較早階段被刪除的道路段 設定位元向量。此等道路段未含有於由等級L探索步驟導 致的有向-非循環圖令,但若其未被刪除,則其將含有於有 向非循%圖中。更精確言之,相關矩陣係用以對在^之探 索區域中的道路段(在>z(其中[不為最精細等級)的某等級 t計算期間,其已被刪除)上的某等級⑻設定位元向 里對於合有於S之探索區域中之等級π + 〇區R,矩陣元 素M[U]將最終為在&之可見度區域之邊界處的等級 糾;區之集合,以使得自SiR之所有最短路徑(在反向圖 中)穿過彼等區中之一者。 產生矩陣4,將所有輸入項初始化成空集。接著,對 於所有等級L區S,執行以下兩個動作。 L矩陣建立:對於根道路段心及所得有向非循環圖〇 中或上的每一权索步驟,針對含有於s之探索區域中 之每一等級0 + 0區R,及針對R之每一入埠道路段 Γ ’將矩陣元素Μ[足51]更新如下: &用Α表示R之探索區域(如較早針對等級而計 算)在D中自/追滅路至/且檢查其是否離開a :若 此路徑上之道路段自等級叫Μτ轉至等級叫)區 。、中T仍3有於a中’但未含有於A中),則將丁添 加至集合Μ[足S],且處理下—Γ。 •項取矩陣.對於S之探索區域中的已在等級乙計算開始 I50832.doc -42- 201211508 之前被刪除的每一道路段,假設R為彼道路段結束於 的等級0 + 7)區(再一次,相對於反向圖而言卜現在將 彼道路段上之區S之位元向量位元設^ “之位元向 量位元之邏輯OR,其中T包括M[足q之所有元素。 注意’將已在較早等級處直接根據某有向非循環圖或按 照涉及某較低等級處之相關矩陣的類似程序設定每一 T之 位元向量位元。 探索 Ο y_ ^ 1人J句很乏敏小成本路 k的有向非循環圖組成。此彳I4 n q x此係精由使用用於最小成本計算 的見、知之Dijkstra方法之變體央眘相 文體來貫現。可自由選擇要最小 化之目標函數,例如,如行 订進時間或估計燃料消耗,或別 處所淪述之其他因素中之任一因素。 —個實施例使用行進時間、 機s 路彳二長度及抑制不當轉彎及 成勖之其他懲罰項之加權總和。/ Therefore, at the intermediate level (that is, 'level υ, only for the slabs containing the grading area of the grading area 1', see the 厪& field to perform the following steps. At level 0 (should be remembered, used for beans) W is used for long-distance path selection), the road segment of the entire map. The heart collects the entry road section of the visibility area, that is, the point from the outside of the area to the area within the area. Then collect the border road section, That is, the road segment after the road section is broken. If the head (♦ tail (L2) does not prohibit the turn from luL2, the road segment L2 is called after (and L1 is before L2). In order to find the border road segment To shrink a complex intersection into a single node. The ferry road segment and the road segment with the "Nerving" attribute are not considered as border roads. The road segments collected in this way can be reduced (possibly significantly reduced) in the following The amount of processing required in the described exploration steps. The exploration step can reduce the exploration of the map and consider their route to the given route including the entry route. 2. For each exit road segment, Find the root road segment and The number of steps is as follows: In this case, if the exit road segment is 丄 and a single exploration step is performed. If no, the road segment is taken as the direction of the root road of the single exploration step in both directions. If there is a pre-emption: If the itching road segment is a single: the road illusion acts on the root road/I of the separate exploration step, the most unruly road segment is the most 疋, what to wear Passing out the road to the mother of a slave road - the extended route ® dry road (if it is located in the starting road section of the take: the root road section of the early stepping step. At a finer level (ie 'except the rank. ^Special treatment of the ferry road section. As mentioned above, in the neighborhood of the disc, the ferry road section is ignored. If the head section of the ferry road section does not belong to the visibility area of R, a single exploration step will be performed. The ferry road section is the only-root road section and the exploration area The domain is constrained to the head zone itself. 3. Perform the scheduled exploration step (described below). 4. Chasing the shortest path from the road segment to the root road segment in the exploration area. In addition to the highest level (also That is, at all levels except level 0), the ordering of the road segments from which the individual tracking starts will affect the result. Assuming that R is the level L area (where L> 0), the level (ε) area is processed first. The road segment, then the remaining exit road segment at level L, and the like to the finest level; 150832.doc •40, 201211508 α is the internal (and has not been removed) road relative to the finest level The segment is finally processed. When is the brake ρ + ± hot 'To X# The road segment that was visited earlier in the tracking, there is no one, the mouth is the path. At the same time as the memorial, set each arrival (the appropriate target bit vector in the segment. At all levels except the highest level, and 〇), perform additional actions··, have crossed the level L for the first time. After the boundary of the area, mark the boundary road section and all other road sections going to the root road section with the flag of the transport section, and mark the shortest path with the u-turn flag to make the corner of the curve. At all levels except the fine level, the fill phase map is simplified for the lower-level after all the areas of the ΪΓΓ, and (4) is recorded as all the road segments of the transport road segment. The node of the new simple path and protection point accumulated by the receiver. Second, the edge is marked as a u-turning section. Finally, the road bh removed before the bit is expanded according to the correlation matrix to the relevant matrix in the processing of this level = two: the example uses the correlation matrix 'its mismatch The relationship between the two road sections. In addition to the finest level of the temple level L, a new correlation matrix is generated and used ^ ^. At the level, the matrix is coded according to the level 0 + area ^ 21 , 〇 ^ ^ ^ 索 丨 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , .doc •41 - 201211508 Combined. At lower levels, most matrix entries are equal to the empty set, ie, the matrix is sparse. ^ The purpose of the off matrix is to help set the bit vector for a road segment that has been deleted at an earlier stage. These road segments are not included in the directed-acyclic order resulting from the level L exploration step, but if they are not deleted, they will be included in the directed non-cyclic graph. More precisely, the correlation matrix is used to rank a road segment in the exploration area of ^ (which is deleted during the calculation of a certain level t of [not the finest level]) (8) Set the bit inward for the level π + 〇 region R in the search region of S, the matrix element M[U] will eventually be the level correction at the boundary of the visibility region of & Passing all of the shortest paths from the SiR (in the reverse view) through one of their zones. A matrix 4 is generated that initializes all entries to an empty set. Next, for all rank L zones S, the following two actions are performed. L matrix establishment: for each root step segment and each of the obtained directed acyclic graphs in or on the weighting step, for each level 0 + 0 region R contained in the search region of s, and for each of R Entering the road segment Γ 'Update the matrix element Μ [Foot 51] as follows: & Use Α to indicate the exploration area of R (as calculated earlier for the level) From D/Follow the way to / and check if it is Leave a: If the road segment on this route is from the level Μτ to the level called). If T is still in a' but not included in A, add Ding to the collection [foot S] and treat the lower one. • Item fetch matrix. For each road segment in the exploration area of S that has been deleted before the start of level B calculation I50832.doc -42- 201211508, assume that R is the level 0 + 7) area where the road segment ends (again Once, relative to the inverse graph, the logical vector OR of the bit vector bit of the region S on the road segment is now set, where T includes all elements of M[foot q. 'The bit vector bits of each T will be set directly at an earlier level according to a directed acyclic graph or a similar procedure involving a correlation matrix at a lower level. Exploring Ο y_ ^ 1 person J sentence is very It consists of a directed acyclic graph of the small-sensitive cost path k. This 彳I4 nqx is based on the variant of the Dijkstra method used for the minimum cost calculation. Objective function, for example, such as line-entry time or estimated fuel consumption, or any other factor described elsewhere. - One embodiment uses travel time, machine length, and suppression of improper turn and Weighting of other penalty items with.

對經典(Dijkstra)方法作出以下修改:Make the following changes to the classic (Dijkstra) method:

1.其對道路段圖起作用,介B ㈣用’亦即’所到訪、放鬆等等之項 目為道路段,而非節^ 轉彎限制及/或交通延伸。力允許该方法考慮到 2.==函數為在根道路段的針對到達時槽之固 二=(行進時間、成本)的向量。選擇時 早曰一 哥父通模式(自由流動、工作曰 早辰鬲峰時間、偻祕丄々 ^ f晚向峰時間,等等)。在下文關於 评估複數個時間段時 i 、 、成本的論述中進一步闡述此内 -43· ^0832^ 201211508 容。 3.1 =給定道路段儲存—個以上標籤。若兩個標藏上 ^決的(未完成的)交通延伸之集合不相等,則該等 軚籤自身被稱為獨立的 ' 、 的且兩者皆在隨後道路段上不斷 傳播。否則,若不同到達時 寻钇之成本函數值之間的關 '、不父替(亦即,一個標鐵 棄較差標籤。否則,藉二;好)’則去 .错由口併母一時槽之較好值而產 =:二其代替原始標藏予以傳播。經合併標籤 4在每:Γ就為原始標籤之前置者集合之併集。 •在兩^ 段上產生特殊⑽” «。其編碼 在兩個方向上開始真#(歧向)路線 播u形轉彎標籤 不傳 合 了將17形轉穹標鐵與一般標籤 / M…、’,、影響設定位元向量時的回溯階段W堇 在開始標籤不比同—道 ,^ k路奴上之以形轉彎標籤差時, 最短路徑才被加上旗標。 在較精細等級處(其中將探索區域限 地監看如上文所界定之邊境道路段。 :口?久 有邊境道路段,就根據每時槽 ;;搜^面達到所 建立監看梳(戰灿⑶吻。 值 段上之標藏在離開堆積時僅 域外部之道路 ,,^ 牡通私織在至少一時樺φ夕氺 本函數值低於當前監看梳 A中之成 展越過若干島,_對每傳播。若探索區域伸 時變函數 +對每—島維持—單獨的監看梳。 本發明之-些實施例可計算展示在複數個時間段而非在 150832.doc •44« 201211508 單-時間處跨越網路之最小成本路徑之位元向量。熟習此 :技術者應瞭解,穿過道路網路之最低成本路線可歸因於 交通密度等等之影響而隨著時間變化。因a,對於任一節 點,可能存在兩個或兩個以上最小成本路徑,每—最小成 本路徑係針對不同時間。在此實施例中,不以關於料最 小成本路徑可適用之時間基準來編碼位元向量。位元向量 僅被設定成將可導航段識別為是最小成本路徑之部分或不1. It works on the road segment map. The items that B (4) use to visit, relax, etc. are road segments, not the section turning restrictions and/or traffic extension. The force allows the method to take into account that the 2.== function is a vector of the roots of the root road segment for the arrival time slot = (travel time, cost). When you choose, you will have a brother-in-law mode (free flow, work 早 early peak time, secret 丄々 ^ f night peak time, etc.). This is further explained in the following discussion of the i, , and cost of evaluating a plurality of time periods -43· ^0832^ 201211508. 3.1 = Store more than one label for a given road segment. If the set of two unfinished (unfinished) traffic extensions are not equal, then the picks themselves are referred to as independent ', and both are continually propagated on subsequent road segments. Otherwise, if there is a difference between the cost function values of the different arrivals, the parent is not replaced (that is, a standard iron discards the poor label. Otherwise, borrows two; good) 'goes. The wrong one is the mother and the time slot. The better value of the production =: two instead of the original standard to spread. The merged label 4 is the union of the original set of pre-sets in each: Γ. • Produce a special (10)” on both segments. The code starts in both directions. The true #(disambiguation) route broadcasts a u-turn label that does not pass the 17-turn to the standard and the general label/M... ',, the retrospective phase when the set bit vector is affected. When the start tag is not the same as the same track, the shortest path is added to the flag when the shape of the turn is poor. It will explore the limited area of the area to monitor the border road sections as defined above: : mouth? There are border road sections for a long time, according to the time slot;; search surface to reach the established monitoring comb (Zhan Can (3) kiss. Value range The above-mentioned standard is hidden only on the road outside the domain when it is piled up. ^Mutong privately weaves at least one time. The value of this function is lower than that of the current monitoring comb A. If the exploration area extends the time-varying function + maintains for each island - a separate monitoring comb. Some embodiments of the invention can be calculated to be displayed over a plurality of time periods rather than at 150832.doc • 44 « 201211508 single-time crossing The bit vector of the minimum cost path of the network. Familiar with this: the technician should understand that The lowest cost route through the road network can be changed over time due to the influence of traffic density, etc. Because a, for any node, there may be two or more minimum cost paths, each-minimum cost path For different times. In this embodiment, the bit vector is not encoded with a time reference applicable to the minimum cost path of the material. The bit vector is only set to identify the navigable segment as part of the least cost path or not

Ο 是最小成本路徑之部分。因&,當使用最小成本資料進行 路:選擇時,路徑選擇演算法將必須考慮來自節點之所有 可能的最小成本路徑。現借助於圖1〇a簡要描述此過程。 在網路之標準Dijkstra探索中,當網路被探索時,該方 法使用為了到達網路中之彼點迄今所發生之總成本加二尚 待發生之預期成本。 因此’-些實施例利用函數而非離散值來作出在每一節 點處之成本評估。因此,在㈣_,圖751之正被探“ 每-節點(例如,75〇)具有與之相關聯之成本函數,其識別 所探索之參數(例如,時間、花費的燃料或其類似旬如何 隨著時間而變化。 成本函數可與道路段而非節點相關聯。 财法接著處理花費的成本以藉由將當前節點處之函數 與迄今已累積之成本求和來添加估計成本以產生新函數。 圖1〇a中所展示之實例在752處展示已在節點750處藉由搜 哥方法產生之成本函數’且展示行進時間如何隨著出 發時間(球)變化。應可看出,成本函數歸因於早晨及傍晚 150832.doc -45- 201211508 高峰時間而在點7 5 4及7 5 6處增加。 在一特定實施例中,以5分鐘間隔儲存成本函數(例如, 道路段上之平均速度);亦即,其為具有5分鐘之時間週期 的量化函數而非連續變化之函數。 若一這路段在任何時間段皆為最低成本路線之部分,則 設定彼道路段之位元向量。 將核心資料投射至整個網路 上文描述了如何減少地圖中所含有之網路以便減少必須 由分割方法考慮之道路段及節點之數目。然而,亦應進一 步考慮在》咸少步驟中被刪除之節,點,則更路徑選擇方法仍 可產生通往或來自被刪除之道路段及節點之路線。 因而’將被刪除之節點及道路段指派至與在核心網路中 其所連接至的節點相同的區。 壓縮 如所-述’所產生之位元向量之大小為非常大的,且因 此需要壓縮資訊。太路0日 _ 本毛月之貝轭例可以不同方式執行此壓 、二’、、、而’-個實施例利用各種技術來壓縮、聚結位元向 量及/或使位元向量相目,繼之以對該等位元 霍夫曼編碼。 之後續 因 jt 匕,—jtt 二只施例可試圖並確保存在位元向 分佈,因為此可有脖心里之不均勻 有效率。 有助於確保雈夫曼編碼比在其他情況下更 牛仂而D ,若位元向量分佈如下: 150832.doc 46· 201211508 (49%的時間) (49%的時間) (2%的時間) 均==夫曼—操控位元向量以具有更不 (79%的時間) (19%的時間) (2%的時間) 減少所產生之位元向量 Ο 為了減少需要產生的位元向量之量,本發明之實施例 使用以下策略中之任一或多者: •並非針對所有節點使㈣ID,且僅針對可導航節點產 生區1D(例如,忽略對應於鐵路之節點)。 〇 00000____ 11111..., 00000. 11111. Ο ? Ο -5 ? •並=所有道路段皆需要位元向量,且位元向量可用於 決策節點周圍的決策道路段。可藉由查看道路段資料 來確定決策節點及決策道路段(如本文件中所描述)、。 •儘管存在許多可能的位元向量,但—些位元向量遠比 其他,7L向罝頻繁,所以特殊編碼可用於最頻繁的位 元向量(例如,〇〇〇 .〇〇〇及U1 1U)。 • =〇:_或⑴...111之位元向量之大多數位元仍 “疋成1 ’或設定成〇。所以部分區塊之霍夫曼碼 應相當有效地編碼該等位元向量。 •在彼此接近之節財,位元向量相同,所以差異 編碼可有效地編碼該等位元向量。 一 •::由:源區將目的地⑽重新排序而使不同區具有 更類似的位元向量型樣(想法描述於本文件中)。 150832.doc -47- 201211508 •或者節點之道路段周圍之所有位元向量應總是給出 。彼適當地可用以更有效地編碼位元向量。 下文中進一步詳細論述此等情況中之—些情況。 =裏值得注意的是’本文中所描述之技術旨在減小位元 向量之大小。然而’應注意’出於路徑選擇之目的使用地 圖貝料的裝置需要對資料之隨機存取。通常,對資料之有 效編瑪需要可變大小’然而,此將防止對資料之隨機存 取。Ο is part of the minimum cost path. Because &, when using minimum cost data for routing: the selection algorithm will have to consider all possible minimum cost paths from the node. This process will now be briefly described with the aid of Figure 1A. In the standard Dijkstra exploration of the Internet, when the network is explored, the method uses the total cost incurred to date to reach the point in the network plus the expected cost to be incurred. Thus, some embodiments utilize a function rather than a discrete value to make a cost estimate at each node. Thus, at (iv) _, Figure 751 is being probed. "Per-node (for example, 75 〇) has a cost function associated with it that identifies the parameters being explored (eg, time, cost of fuel, or the like) The cost function can be associated with a road segment rather than a node. The method then processes the cost of the cost to add a new cost by summing the function at the current node with the cost that has been accumulated so far to generate a new function. The example shown in Figure 1a shows at 752 the cost function generated by the Sogou method at node 750 and shows how the travel time varies with the departure time (ball). It should be seen that the cost function is Increased at points 7 5 4 and 7 5 6 during morning and evening 150832.doc -45 - 201211508 rush hour. In a particular embodiment, the cost function is stored at 5 minute intervals (eg, average speed over road segments) That is, it is a function of a quantization function with a time period of 5 minutes instead of a continuous change. If a road segment is part of the lowest cost route at any time period, then the road segment is set. Bit vector. Projecting core data to the entire network The above describes how to reduce the network contained in the map in order to reduce the number of road segments and nodes that must be considered by the segmentation method. However, further consideration should be given to the "salty steps". In the deleted section, the point, the more path selection method can still generate routes to or from the deleted road segments and nodes. Thus, the nodes and road segments to be deleted are assigned to and in the core network. The same area as the node to which the connection is connected. The size of the bit vector generated by the compression as described is very large, and therefore the information needs to be compressed. The path of the yoke of the moon is exemplified in different ways. Pressure, two ',, and '- embodiments utilize various techniques to compress, coalesce, and/or align bit vectors, followed by Huffman coding of the bits. Jt 匕, —jtt The two examples can try to ensure that there is a distribution of bit directions, because this can have unevenness in the neck. It helps to ensure that the sputum code is more sloppy than D in other cases. The bit vector distribution is as follows: 150832.doc 46· 201211508 (49% of the time) (49% of the time) (2% of the time) == Fuman - manipulates the bit vector to have less (79% of the time) (19% of the time) (2% of the time) Decrease the resulting bit vector Ο To reduce the amount of bit vector that needs to be generated, embodiments of the present invention use any one or more of the following strategies: • Not for All nodes make the (4) ID and generate the zone 1D only for the navigable nodes (for example, ignoring the nodes corresponding to the railway). 〇00000____ 11111..., 00000. 11111. Ο ? Ο -5 ? • and = all road segments are required A bit vector, and the bit vector can be used for decision road segments around the decision node. Decision nodes and decision road segments (as described in this document) can be determined by viewing road segment data. • Although there are many possible bit vectors, some bit vectors are much more frequent than others, 7L is frequent, so special encoding can be used for the most frequent bit vectors (for example, 〇〇〇.〇〇〇 and U1 1U) . • =〇: Most of the bit vectors of _ or (1)...111 are still "set to 1' or set to 〇. So the Huffman code of a partial block should encode the bit vector quite efficiently. • In the close to each other, the bit vector is the same, so the difference encoding can effectively encode the bit vector. One::: by: the source area reorders the destination (10) so that the different areas have more similar bits The vector pattern (the idea is described in this document). 150832.doc -47- 201211508 • All bit vectors around the road segment of the node should always be given. It can be used appropriately to encode the bit vector more efficiently. Some of these situations are discussed in further detail below. = It is worth noting that 'the technique described in this paper is intended to reduce the size of the bit vector. However, 'note that' the map is used for the purpose of path selection. The device of the material needs random access to the data. Usually, the effective programming of the data requires a variable size. However, this will prevent random access to the data.

因而:本發明之實施例可使用—種折衷,其中資料被編G 碼為-系列被編索引之頁,且接著利用彼等頁内之可變編 =°在此等實施例中’可達成對每一頁之隨機存取(經由 足索引)旦一頁已被存取,則實施例可隨後解碼整個 頁。此提供效率與地圖大小之間的折衷-增加每頁之節點 之數目會減小地圖大小,但使資料存取變慢。本發明之一 特定實施例使用每頁16個節點。應瞭解,任何一個節點亦 可具有離開彼節點之不同數目個道路段。因而,即使可能 存在相同數目個節點’每頁仍可存在可變量的道路段。另“ 外,對於儲存於每一頁上之位元向量中之每一者亦可發 生不同壓縮。 λ 此結構可導致如圖11中所展示之地圖格式。在此圖中, 對Arp旗標的麥考與位元向量同義。將數字「η」儲存於構 頭内且可針對不同地圖變更該數字「η」以便最佺化彼 地圖之效能。 β周即η」為在地圖大小與在解碼地圖資料時之存取速 150832.doc -48- 201211508 度之間的折衷: •大的η值將把許多節點分組在_起,此對於地圖麼縮 有益,但對於對資料之隨機存取之速度不利。 •小的η值將把少數節點分組在—起,此對於對資料之 隨機存取之速度有益,但對於地關縮不利。 •可將「η」言史定成(例如)4,亦即’ 16個始發節點(始發 節點在道路段之開始端處·亦即,圖7之欄测)之頁, 但應記住,每-始發節點具有若干個到達道路段⑼_ road segment),所以在假定平均有3個到達道路段的 情況下,每一者意謂每一頁的儲存量相當於〜Μ個道 路段。 在此格^中,取決於經編碼之區㈣級,資料具有不同 格式。圖12展示等級〇(亦即,最粗略區)之格式之一實例, 且圖12展示其他等級之區的一實例格式。Thus, embodiments of the present invention may use a trade-off in which the data is G-coded into a series of indexed pages, and then using the variable edits in their pages = 'in these embodiments' For a random access (via a foot index) of each page, a page has been accessed, and the embodiment can then decode the entire page. This provides a trade-off between efficiency and map size - increasing the number of nodes per page reduces the size of the map, but slows data access. One particular embodiment of the invention uses 16 nodes per page. It should be understood that any one node may also have a different number of road segments leaving the node. Thus, even if there may be the same number of nodes, there may be a variable road segment per page. In addition, different compressions can occur for each of the bit vectors stored on each page. λ This structure can result in a map format as shown in Figure 11. In this figure, the Arp flag is The McCaw is synonymous with the bit vector. The number "η" is stored in the constructor and the number "η" can be changed for different maps to minimize the performance of the map. β weeks, ie η" is a compromise between the map size and the access speed of 150832.doc -48 - 201211508 degrees when decoding map data: • A large η value will group many nodes in _, which is for the map? It is beneficial, but it is not good for the speed of random access to data. • Small η values will group a small number of nodes, which is good for the speed of random access to data, but is not good for ground closure. • The history of “η” can be defined as (for example) 4, which is the page of '16 originating nodes (the originating node is at the beginning of the road segment, ie, the column in Figure 7), but it should be remembered that Each-initiating node has several arriving road segments (9)_road segments, so in the case of assuming an average of three arriving road segments, each means that the storage amount per page is equivalent to ~ one road segment. In this case, depending on the coded area (four) level, the data has a different format. Figure 12 shows an example of the format of a level 〇 (i.e., the most coarse area), and Figure 12 shows an example format of areas of other levels.

位70向量及相關資訊儲存於―資料結構中,在圖"中展 ο *該資料結構之格式’該格式包含以下各者:一標頭 用於稍後描述之霍夫曼編碼中之霍夫曼樹議;每一 階層中之區計數804(在每等級具有值定數目個區的情況下 •為空的),區鄰居806(在無區鄰居的情況下為空的);_ :重新映射表808;位元向量頁索弓⑽個節點)810;及區ID 及::向量812。可將保持位元向量之資料結構保持於單 一檔木内,或可將其保持於複數個檔案内。 些實施例中,地圖標頭800經配置成含有指示以下 各者之其他資訊: 150832.doc -49- 201211508 •等級之最大數目。 •最短鄰居清單之長度。 •最長鄰居清單之長度。 含有所有鄰居清單之區段之位元纽偏移。 。保持貝λ之檔案或每一檔案可具有用以編碼鄰居清單之 區& °百先編碼所有清單之大小。相對於最短清單長度、 ^BitsRequired(l〇ngestListLength - shortestListLength)^ 1的固定數目個位元上編碼每—清單長度。注意,若所有 清單=有相同長度,則不需要位元來編碼該等長度。 -接著編碼所有清單之内容。每-清單由鄰居區ID之若干 7L組構成:等級〇處之對、等級2處之3元素元組,等等。 f α,不編碼始發區(from-regi〇n)元組(ASCII檔案中的 在「·」之前的部分)。其為隱含的,因為所有區之清單 以遞升次序儲存。舉例而言,若地圖具有H)()x1Gx5之3個 等級(等級°處之⑽個區、等級1處之1〇個區、等級2處之5 個區),貝·· 在專級0處,錯存始發语j 7 t 赞^ 1 2、3、···、1〇〇之清單(以 此次序之1 0 0個清單)。丨t卜莖、主抑l 月早)此4清早中之每一者含有若干 對。 •在等級1處’儲存始發區 2.1、2.2、...、2.10、3.1 (以此次序之1 〇 〇 〇個清單) 3元素元組。 U、I·2、13、…、l.io、、…、100.9、I 〇〇. 1〇之清單。此等清單中之每一者含有 因為其為最後等級 在等級2處:不儲存任何東西, 150832.doc -50- 201211508 所以不存在鄰居。 將元組中之每一組成項储存為n位A。根據處於對應等 級之區之數目確定每一等級之位元之數目。所以,有可能 隨機存取清單。在3個等級1〇㈣㈣之狀況下,編碼元組 He將使用用於&之7個位元(因為在等級〇處存在ι〇〇個 區),用於b之4個位元(因為在等級丨處存在1〇個區),及用 於c之3個位元(因為在等級2處存在5個區)。 實例:假定l〇〇Xl〇x5個區有如下分割:粗略等級〇處之The bit 70 vector and related information are stored in the "data structure", and the format of the data structure is shown in the figure " The format contains the following: a header is used in the Huffman coding described later. Fuman's discussion; the number of districts in each stratum is 804 (in the case of a certain number of zones per level • is empty), the zone neighbors 806 (empty in the case of zoneless neighbors); _: Remap table 808; bit vector page (10) nodes) 810; and region ID and :: vector 812. The data structure of the hold bit vector can be maintained in a single file, or it can be held in multiple files. In some embodiments, the ground icon header 800 is configured to contain additional information indicating each of the following: 150832.doc -49- 201211508 • The maximum number of levels. • The length of the shortest neighbor list. • The length of the longest neighbor list. The bit offset of the section containing all neighbor lists. . Keeping the files of the λ or each file may have the size of the list " The per-list length is encoded relative to the shortest list length, a fixed number of bits of ^BitsRequired(l〇ngestListLength - shortestListLength)^1. Note that if all lists = have the same length, no bits are needed to encode the lengths. - Then encode the contents of all the listings. Each-list consists of a number of 7L groups of neighboring zone IDs: pairs at level 、, 3 element tuples at level 2, and so on. f α, does not encode the from-regi〇n tuple (the part of the ASCII file that precedes the "·"). It is implied because the list of all districts is stored in ascending order. For example, if the map has 3 levels of H)()x1Gx5 ((10) areas at level °, 1 area at level 1, and 5 areas at level 2), Bay·· at level 0 At the beginning, the wrong originator j 7 t Like ^ 1 2, 3, ···, 1〇〇 list (1 0 0 list in this order).丨tBu stem, main suppression l month early) Each of these 4 early mornings contains several pairs. • Store the originating area at level 1 '2.1, 2.2, ..., 2.10, 3.1 (1 〇 〇 list in this order) 3 element tuples. List of U, I·2, 13, ..., l.io, ..., 100.9, I 〇〇. Each of these lists contains because it is the last level. At level 2: Nothing is stored, 150832.doc -50- 201211508 So there are no neighbors. Each component in the tuple is stored as n bits A. The number of bits per level is determined based on the number of zones in the corresponding level. Therefore, it is possible to randomly access the list. In the case of 3 levels 1 〇 (4) (4), the coding tuple He will use 7 bits for & (because there are ι 区 areas at the level )), for 4 bits of b (because There are 1 area at the level ), and 3 bits for c (because there are 5 areas at level 2). Example: Assume that l〇〇Xl〇x5 areas have the following divisions: rough level

100個區、中間等級i處之1〇個區,及詳細等級2處之5個 區。 在等級0處之檔案中,含有鄰居清單之區段將含有: 才曰示處於4級〇之1 00個區的清單之長度之i⑼個數 目。根據BitsRequired(longestListLength-shortestListLength) 计算位π之數目。每一數目係相對於該等級處之最短 清單(最短清單儲存於標頭中)。 •接著為100個清單之内容(1〇〇對)。在7個位元上編碼 母一對之第一元素(因為在等級〇處存在1〇〇個區),且 在4個位兀上編碼每一對之第二元素(因為在等級1處 存在10個區)。 在等級1處之檔案中,含有鄰居清單之區段將含有: • ·100Χ10=1000個數目’其指示等級1處之1000個區之 清單的長度。 ••接著為1000個清單之内容(1000個3元素元組)。在7個 位元上編碼每一元組之第一元素(因為在等級〇處存在 100個區),在4個位元上編碼每一元組之第二元素(因 150832.doc -51- 201211508 為在每一等級〇區中存在1〇個等級丨區),且在3個位元 上編碼每一元組之第三元素(因為在每一等級1區中存 在5個等級2區)。 在等級2處之檔案中,不需要儲存任何内容,因為其為 最後等級。 對於編碼器輸入檔案,可採用任一形式之清單。 因此,一旦已執行該分割成三個等級,則將每一節點指 派給每等級之一個區;亦即,三個區。 標頭800 通系,用於本發明之實施例中之標頭為小的,且因而, 不需要為了減小其大小而使該大小最佳化。通常,為了方 便起見,全部内容皆為位元組對準或字對準的: • (4個位几組)編碼版本(每次地圖格式改變時會增加) • (4個位元組)地圖旗標(用以開啟或關閉特徵,最初為 0,但以後在需要添加可選特徵的情況下可被使用) • (4個位元組)地圓中之節點之總數目 • (4個位元組)地圖中之道路段之總數目 • (4個位元組)區段霍夫曼樹之位元組偏移 • (4個位元組)區段區二進位大型物件(bk)b)之位元組偏移 • (4個位元組)區段區頁資訊之位元組偏移 • (4個位元組)區段位元向量頁資訊之位元組偏移 • (4個位元組)區段可變大小記錄之位元組偏移 • (4個位元組)最大位元向量㈣旗標)頁(以位元計)(可 由路線規劃方法用以在啟動時預分配位元流解碼器之 150832.doc •52- 201211508 較壞狀況) • (4個位元組)平均位元向量(arp旗標)頁大小(以位元 計)(用以内插位元向量頁位置) • (4個位元組)最小位元向量(arp旗標)頁差異(用以使得 所有差異>=〇,從而避免儲存位元正負號) • (2個位元組)位元向量(arp旗標)歷史之最大大小(可由 路線規劃方法用以在啟動時預分配歷史緩衝器) • (2個位元組)每頁之道路段之最大數目(當前未使用) • (1個位元組)此檔案之阿波羅(Ap〇ll〇)等級 • (1個位元組)每位元向量(arp旗標)之位元 • (1個位元組)每位元向量(arp旗標)頁差異之位元(位元 向量(arp旗標)頁之固定大小記錄中的欄位) • (1個位元組)每二進位大型物件索引之位元(區頁資訊 之固定大小記錄中的欄位) • (1個位元組)每區計數之位元(區頁資訊之固定大小記 錄中的攔位) • (1個位元組)每非平凡(trivial)位元向量(arp旗標)區塊 之位元 (1個位元組)區節點頁大小之log—2() 之霍 (1個位元組)位元向量(arp旗標)頁大小之1〇〔2() (1個位元組)用以編碼本地區1]0之霍夫曼樹之數目 (1個位元組)用以編碼位元向量(arp旗標)歷 夫曼樹之數目 ‘ 霍夫曼樹802 150832.doc -53· 201211508 用來編碼在每—節點周圍之道路段之數目之霍夫曼 ^極】、的,僅大約10個碼,僅存在於等級〇處之檔 案中 /諸存非平凡位元向量(&印旗標)之區塊之霍夫曼 -t最大隹夫曼樹,對於壓縮而言,愈大愈好,但在 ϋ tj $ & +所需的記憶體愈多(在地圖壓縮與路 :規劃方法中之記憶體使用之間的折衷)。 田辽史大〗、為〇時位元向量(arp旗標)差異碼之霍夫曼 樹:極小的,僅3個碼 田歷史大小為1時位疋向量旗標)差異碼之霍夫曼 樹:極小的,僅4個碼 當歷史大小>=n時位元向量(卿旗標)差異碼之霍夫曼 樹.極小的(霍夫曼樹之數目儲存於標頭中) 當在區頁中存在3個區時區ID之霍夫曼樹:極小的, 僅3個碼 當在區頁中存在4個區時區出之霍夫曼樹:極小的, 僅4個碼 當在區頁中存在>=n個區時區⑴之霍夫曼樹:極小的 (霍夫曼樹之數目儲存於標頭中)。 之其他部分小,但亦可 。其中’可使用地理相 區重新映射表804及區id清單8〇6 雖然區ID 806比圖1 1之權案格式 壓縮區ID 806,如圖14中舉例說明 關以便減少所使用之資料量。 在大多數狀況 每一區頁儲存彼區頁中之相異區之清單 150832.doc -54- 201211508 下預期此清單為小的(事實上,許多π报可能僅含有i個至 少在等級0的區)。區之清單具有可變大小。應可隨機地存 取頁内之資料(亦即,隨機存取)且因而,使用固定表大小 以允許此情況。 將相異區之每—清單按每—區中之節點之頻率排序:清 單,第一元素對應於在該頁中具有最大數目個節點之區, 清單之最後元素為該頁中具有最小數目個節點之區。 Ο Ο 對於區頁中之每—節點,可使用本地區ID(對頁而言為 本地的)來編碼其區ID。太认 此本地ID為頁中之區之索弓丨(其為 小的整數’常常為〇,因為G對應於區頁中之最普遍的 區)。 將郎點之區ID儲存如下: •區1D之區陣列儲存頁中之區之所有可能的重疊 清早。區之清單為彼陣列中之連續區m。清單可 (且確實)重疊。該陣列不儲存每一清單之開始及結 束(此由區頁資訊表進行)。 區頁貝讯表為固定大小之記錄表(因此可隨機存 每°己錄含有在清單之開始之陣列中的舍 引+該清單中之項目之數目。 ’、 •:)郎點含有—本地節點ID(相對於其頁而言為本 文中進步界定此等概念_之每一者。 區陣列 區陣列編碼頁夕& ‘ 貝之所有可能的區清單。其為區10之簡單陣 150832.doc -55- 201211508 列,其中區ID之清單可重疊。其大小應為小的,因為清單 重疊。在區段區頁資訊中進一步描述該區陣列。 區頁資訊 使用區頁資訊表之固定大小記錄中的2個櫊位 表中的區ID之清單: •區計數(此頁中之區之數目,預期為小的)。 •在區清單之陣列中之偏移(區之清單開始之處)。 在一實施例中,此描述於圖! 2中。 偏移攔位指向區陣列中:(例如)在假定在每一等級中總 是存在小於256個區的情況下(其為合理假定),每區①具 有1位元組之固定大小記錄係足夠的(但若每等級256個位 元被認為太有限制性,則使得每個區出大於8個位元為易 於實現的)。1頁表記錄中之區計數指示在指定偏移處在 陣列中有多少區要被考慮。 若若干區具有相同清單,料可指向相同所在地,其應 =二 '為吾人可預期許多頁共用相同清單或共用該 荨相同清早之部分。 參考圖12來更詳細解釋此,圖12 ((例如)nr=9以將512個節點分植在起、2lU個即點 刀.·且在一起)之頁 注意區ID之陣列900緊湊的程度因 、也例。 列中之同-所在地或重疊 Z胃可指向陣 位大型物件)。事實上,增加頁之也數(=標記之區二進 大小,因為每-頁接著在較少的區數上目重增加陣列之 能性減小。所以此陣列應允許產生呼夕$所以組合之可 α夕頁,而無需太多地 150832.doc 56 - 201211508 圖二間,亦無需所產生之地圖資料被載入至的裝置上之太 多記憶體。 "亥方法g在使含有區ID之清單之陣列9〇〇儘可能地小。 該方法旨在在陣列中儘可能經常地重新使用相同的區丨D清 單。該方法可自由地將清單之最後2個元素重新排序,因 為其不會影響霍夫曼碼之大小。 Ο100 districts, 1 district at the intermediate level i, and 5 districts at the detailed level 2. In the file at level 0, the section containing the neighbor list will contain: i (9) the number of the list of the 100 units in the 4th level. The number of bits π is calculated according to BitsRequired (longestListLength-shortestListLength). Each number is relative to the shortest list at that level (the shortest list is stored in the header). • Followed by the contents of 100 lists (1〇〇). The first element of the parent pair is encoded on 7 bits (because there are 1 area at the level )), and the second element of each pair is encoded on 4 bits (because it exists at level 1) 10 districts). In the file at level 1, the section containing the neighbor list will contain: • 100 Χ 10 = 1000 number 'which indicates the length of the list of 1000 zones at level 1. •• Next is the content of 1000 lists (1000 3-element tuples). The first element of each tuple is encoded on 7 bits (because there are 100 regions at the level )), and the second element of each tuple is encoded on 4 bits (because 150832.doc -51-201211508 is There are 1 level 丨 in each level, and the third element of each tuple is encoded on 3 bits (because there are 5 levels 2 in each level 1 area). In the file at level 2, there is no need to store anything because it is the last level. For encoder input files, a list of any form can be used. Therefore, once the division has been performed into three levels, each node is assigned to one of each level; that is, three areas. The header 800 is in communication, and the header used in the embodiment of the present invention is small, and thus, it is not necessary to optimize the size in order to reduce its size. Usually, for convenience, all content is byte aligned or word aligned: • (4 digits) encoded version (increased each time the map format changes) • (4 bytes) Map flag (to turn features on or off, initially 0, but can be used later if you need to add optional features) • (4 bytes) Total number of nodes in the ground • (4 Bytes) Total number of road segments in the map • (4 bytes) Segment Huffman tree byte offset • (4 bytes) Segment region Binary large object (bk) b) Bytes offset • (4 bytes) Segment area page information byte offset • (4 bytes) Segment bit vector page information byte offset • (4 Bytes) Segment Variable Size Recording Byteset Offset • (4 Bytes) Maximum Byte Vector (4) Flag) Page (in bits) (can be used by route planning method at startup) Pre-allocated bitstream decoder 150832.doc •52- 201211508 worse condition) • (4 bytes) average bit vector (arp flag) page size (in bits) () to interpolate the bit vector page position) • (4 bytes) minimum bit vector (arp flag) page difference (to make all the differences >=〇, thus avoiding the storage of the sign) • (2 bytes) The maximum size of the bit vector (arp flag) history (used by the route planning method to pre-allocate the history buffer at startup) • (2 bytes) of the road segment per page Maximum number (currently unused) • (1 byte) Apollo (Ap〇ll〇) level of this file • (1 byte) Bit per bit vector (arp flag) • (1 Bits) bits per bit vector (arp flag) page difference (fields in fixed size records of bit vector (arp flag) page) • (1 byte) per binary large The bit of the object index (the field in the fixed size record of the area page information) • (1 byte) the bit counted per area (the block in the fixed size record of the area page information) • (1 bit) Tuple) Each nontrivial bit vector (arp flag) block bit (1 byte) area node page large Log- 2 () Huo (1 byte) bit vector (arp flag) page size 1 〇 [2 () (1 byte) used to encode the region 1] 0 Hoff The number of man trees (1 byte) is used to encode the number of bit vectors (arp flags) of the tree. 'Hoffman tree 802 150832.doc -53· 201211508 is used to encode around each node. Hoffman's number of road segments, only about 10 yards, only exist in the archives of the ranks / the non-trivial bit vector (& flag) Man-t's largest waffle tree, the larger the compression, the better, but the more memory you need in ϋtj $ & + (between map compression and road: memory usage in planning methods) Eclectic). Tian Liao Shi Da, 霍夫 〇 位 位 位 位 ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( Tree: very small, only 4 codes when the historical size >=n, the bit vector (King flag) difference code Huffman tree. Very small (the number of Huffman trees is stored in the header) There are 3 zone time zone ID Huffman trees in the zone page: very small, only 3 codes when there are 4 zone time zones in the zone page Hoffman tree: very small, only 4 codes when in the zone page Huffman tree with >=n zone time zone (1): very small (the number of Huffman trees is stored in the header). The other parts are small, but they are also available. Wherein the geographic phase region remapping table 804 and the region id list 8〇6 can be used. Although the region ID 806 is larger than the rights format compression region ID 806 of FIG. 11, as illustrated in FIG. 14 to reduce the amount of data used. In most cases, each area page stores a list of distinct areas in the area page 150832.doc -54- 201211508 It is expected that this list is small (in fact, many π reports may only contain i at least level 0 Area). The list of zones has a variable size. The data in the page (i.e., random access) should be stored at random and, therefore, a fixed table size is used to allow this. Each of the distinct zones is sorted by the frequency of the nodes in each zone: the list, the first element corresponds to the zone with the largest number of nodes in the page, and the last element of the list has the smallest number of pages The area of the node. Ο Ο For each node in the zone page, the zone ID (local to the page) can be used to encode its zone ID. Too much of this local ID is the area in the page (which is a small integer ', often because G corresponds to the most common area in the area page). The ID of the area of the lang point is stored as follows: • All possible overlaps of the area in the array storage page of the area 1D Early in the morning. The list of zones is the contiguous zone m in the array. Lists can (and do) overlap. The array does not store the beginning and end of each list (this is done by the area page information table). The area page is a fixed-size record table (so you can randomly store the number of items included in the list at the beginning of the list + the number of items in the list. ', •:) lang points contain - local The node ID (as opposed to its page for each of these concepts in the context of this article). The area array area array encodes the page & 'Bei's list of all possible areas. It is a simple array of area 10, 150832. Doc -55- 201211508 column, where the list of area IDs can overlap. The size should be small because the list overlaps. The area array is further described in the section area page information. The area page information uses the fixed size of the area page information table. A list of the zone IDs in the two clamp tables in the record: • Zone count (the number of zones in this page, expected to be small) • Offset in the array of zone lists (where the zone list begins In an embodiment, this is described in Figure 2. The offset intercepts in the array of regions: (for example) assuming that there are always less than 256 regions in each level (which is a reasonable assumption) ), each zone 1 has a fixed size of 1 byte The recording system is sufficient (but if each level of 256 bits is considered too restrictive, then each zone is more than 8 bits is easy to implement). The zone count in the 1 page table record indicates the specified offset. How many zones are in the array to be considered. If several zones have the same list, they can point to the same location, which should be = two's. We can expect many pages to share the same list or share the same early morning part of the page. To explain this in more detail, Figure 12 (for example, nr=9 to divide 512 nodes in the starting point, 2lU points, ie, and together), note the extent of the array ID of the array 900 is also compact, Example: The same in the column - the location or overlap Z stomach can point to large objects in the array). In fact, the number of pages is increased (= the area of the mark is doubled, because each page then decreases the energy of the array by a small number of areas. Therefore, this array should allow the generation of the eve $ so the combination It can be used as a lot of memory on the device to which the generated map data is loaded without the need for too much 150832.doc 56 - 201211508. The array of IDs is as small as possible. This method is intended to reuse the same list of regions in the array as often as possible. This method freely reorders the last two elements of the list because of its Does not affect the size of the Huffman code.

舉例而言’當一清單含有2個區丨〇及34時,儲存清單 10、34或34、1〇(與頻率無關)為等效的,因為當僅存在2個 節點時霍夫曼樹在所有狀況下僅使用〖個位元。換言之, 對於最後2個區而言,放鬆了根據頻率排序的要求。類似 地,亦可將3個元素10、34、4〇之清單儲存為1〇、4〇、 34 ,因為僅第一個碼10(最頻繁的)將使用“固位元且其他 碼40及34皆使用2個位元(與次序無關)。 因此,查看圖12,可看出,陣列900儲存兩個值:長度 及自區資料之開始之偏移。因此,以第一列(3 · 〇)為例, 此指代自檔案之開始的偏移為0之三片資料(亦即,μ、 34、4〇)。作為另一實例,陣列輸入項(丨:2)指代單—區(亦 即’長度為1),其中自檔案之開始的偏移為二;(亦 40)。 品 在一替代實施例中’根據以下方法編碼區頁資訊: ,此區段編碼母一區中之子區之數目。子區之數目可 — 等級中可變。然而,每一等級之子區之數目堂者 φ吊為恆定 的。相對於每一等級處之區之最小數目且使用bg 2 (max—number—of_regions-min_number_of_regi〇n)個仿 _ 4立來 150832.doc -57. 201211508 編碼子區之數目。所以若區之數目為恆定的,則將〇個位 兀用以編碼區計數,且此區段為空的。區的最小數目及最 大數目儲存於側檔案之標頭中。 區鄰居區段(關於圖6及圖6a來論述鄰域)之編碼 此區段針對在給定等g處之每_區階層而編碼在更詳 細等級L+1處之區鄰居之清單。舉例而言,等級W處之 區D可具有以下在等級L=2處之鄰居之清單:3.5 4 3·6·3 3.6.4 4.7」4.7.3。如別處所論述,可將鄰居之清單用來增 加用以產生該側標案或每一側標案之預處理之速度。 此區段已被分裂成2個子區段: •用以編碼所有鄰居清單(與在給定等級處之區數目一 樣多)之長度之子區段。相對於最短清單來編碼該長 度’且接著,將位元之數目計算為1〇g—2〇ength 1〇啊 / Sh〇neStJiSt)。若所有清單具有相同長 =。則將_位元用以編碼長度(且因此,區段就為空 •用以編碼所有鄰居清 樣多)之子區段。 匕在,.·口疋寺級處之區數目- 區ID重新映射表之編碼 僅在等級〇之側權幸φ ^ ± 中編碼此區段。其編碼-维# ^ 二維表被用以重新排序 I,准表,该 (則更有效地編碼位元向_之位兀 述聚結及位元重新排序)在本文件中,下文進—步描 新排序及聚結以最佳化卩對位兀向1中之位元的重 取佳化封位元向量之霍夫曼編碼。此表由 ί 50832.doc -58· 201211508 路線規劃方法用以在知曉以 解碼之位元位置: 下各者時找到位元向量中的要 ΟFor example, when a list contains 2 regions and 34, the storage list 10, 34 or 34, 1〇 (independent of frequency) is equivalent, because when there are only 2 nodes, the Huffman tree is Only one bit is used in all cases. In other words, for the last two zones, the requirements for sorting by frequency are relaxed. Similarly, the list of 3 elements 10, 34, 4〇 can also be stored as 1〇, 4〇, 34, because only the first code 10 (most frequently) will use the “retention bit and other code 40 and Each of the 34 bits uses 2 bits (independent of the order). Thus, looking at Figure 12, it can be seen that the array 900 stores two values: the length and the offset from the beginning of the region data. Therefore, in the first column (3. 〇) For example, this refers to the three pieces of data offset from the beginning of the file (ie, μ, 34, 4〇). As another example, the array input (丨: 2) refers to the list— The area (that is, the length is 1), wherein the offset from the beginning of the file is two; (also 40). In an alternative embodiment, 'code the area page information according to the following method: The number of sub-zones. The number of sub-zones can be - variable in the rank. However, the number of sub-zones of each rank is constant, relative to the minimum number of zones at each level and using bg 2 ( Max_number_of_regions-min_number_of_regi〇n) 仿 _ 4立来150832.doc -57. 201211508 The number of coding sub-areas. So if If the number is constant, then one bit is used for the code area count, and this section is empty. The minimum number and the maximum number of areas are stored in the header of the side file. And Figure 6a discusses the encoding of the neighborhood of this section for a list of zone neighbors at a more detailed level L+1 at a given level of each gram. For example, the zone at level W D may have the following list of neighbors at level L=2: 3.5 4 3·6·3 3.6.4 4.7” 4.7.3. As discussed elsewhere, the list of neighbors can be used to increase the speed of the pre-processing used to generate the side or side standard. This section has been split into 2 subsections: • Subsections that are used to encode the length of all neighbor lists (as many as the number of zones at a given level). The length is encoded relative to the shortest list and then the number of bits is calculated as 1〇g-2〇ength 1〇 / Sh〇neStJiSt). If all lists have the same length =. The _ bit is then used to encode the subsection of the length (and therefore the section is empty • used to encode all neighbors to have more samples).匕 , 数目 数目 数目 数目 疋 疋 疋 - - - - - 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目 数目The code-dimensional #^ two-dimensional table is used to reorder I, the quasi-table, which (more effectively encodes the bit to the _ position of the rendition and the bit reordering) in this document, the following - Step-by-step new sorting and coalescing to optimize the Huffman encoding of the replenishment of the bit vector of the bit in the 兀 alignment. This table is used by ί 50832.doc -58· 201211508 route planning method to find the key in the bit vector when knowing the position of the bit to be decoded:

•當前節點之始發區ID •原始的到達位元(t0_bh)索弓丨(亦即 量位元之後的位元索引) 二維表之2個索引為: •始發區ID •目的地位元索引(目的地之區) 此區段由2個子區段構成: 在解聚結位元向 用以編碼等級〇處之每一區的聚結之位 段。用以編碼每一數目之位元數目 number_〇f_c〇alesced_bits) 元之數目的區 為 l〇g_2(max 用以編碼位元重新映射表之區段。因為在進行路徑選 擇時,目的地位元不改變(在進行路徑選擇時目的地 保持相同),但始發區職變(視在進行路徑選擇時所 探索之節點而定)’矩陣按目的地位元的列進行儲 存。在每—列中,儲存每一始發區之位元重新排序數 目路線規劃方法在進行路徑選擇時應通常僅將對應 於給定路徑選擇目的地的1列載入於記憶體中。路線 規劃方法不需要將整個二維矩陣儲存於記憶體中。路 線規劃方法可隨機存取彼列。剌以編碼每—重新映 射輸入項之位元數目計算為l〇g_2(聚結位元之最大數 圖13針對等級0區(見圖9)擴展 了圖11中所展示之擋案之 I50832.doc -59- 201211508 位70向里區段812。可看出,每一頁包含道路段計數、 ID及位元向量〇 °° *圖14針對除了等級〇之外的等級擴展了圖u中所展示之 才田案之位元向量區段812。可看出,對於其他區而言,儲 存位元向量,且不儲存道路段計數或區m(針對等級〇 了它們)。 子 鑒於由每一等級之區覆蓋的區域之差別,在每等級中每 頁之節點的數目可變化。舉例而纟,由於等級。内之區覆 蓋大的區域’故對於等級〇每區每頁可能存在較多節點。 :例而言’對於等級〇,—些實施例每區每頁可儲存M2個 P ’、 口而,更洋細等級可具有較小數目個節點_例如, 256個節點' 128個節點、64個節點、32個節點、16個節點 或,、類似者。貫際上,某實施例可利用每頁1 個節點、 2048個節點或4〇96個節點。 位元向量810、812之編碼 表81 〇 3有固定大小之記錄。始發節點ID被一起分組於 具有2n個的頁中。 ' 將資料分組於具有多個連續節點之頁中為方便的,因為 ^期,7L向$對於相同鄰$中之若干道路段具有類似型 ^藉由使用頁,有可能以差異(in delta)編碼若干道路段 且達成良好壓縮。類似地’有可能以差異將節點之區職 ‘:頁中另方面,其意謂存取一道路段之資料需要將 右干道路I又之貝料解封裝(不能直接隨機存取)。可將必須 將若干節點或道路段解封裝以存取-個道路段或節點之資 150832.doc -60- 201211508 料認為是可接受的,因為·· •資料可被快取,所以在# 資料"並非無用的道路段時讀取的額外 不久之後將為有用的(此此額外資料 ㈣-ahead)參數)。 」於磁碟快取之預先讀取 •當與Dijkstra A*路徑選擇比| 、释比較時,使用該等位元向量 之路徑選擇將擴展搜尋之 〇、— 1之大小減小了 —數量級。藉由 知頁为組資料,僅地圖的小• The originating zone ID of the current node • The original arriving bit (t0_bh) is the index of the bit (that is, the bit index after the quantizer). The two indexes of the two-dimensional table are: • Originating zone ID • Destination bit Index (area of destination) This section consists of 2 sub-sections: the segment where the de-aggregation bit is aggregating to each of the regions used to encode the level 〇. The area used to encode the number of bits per number number_〇f_c〇alesced_bits) is l〇g_2 (max is used to encode the segment of the bit remapping table. Because the destination bit is used for path selection No change (the destination remains the same when the path is selected), but the origination area (depending on the node being explored when the path is selected) 'matrix is stored in the column of destination bits. In each column , storing the number of bits reordering for each originating area. The route planning method should generally only load one column corresponding to a given path selection destination into the memory when performing path selection. The route planning method does not need to be the entire The two-dimensional matrix is stored in the memory. The route planning method can randomly access the list. The number of bits per code-remapped input is calculated as l〇g_2 (the maximum number of coalesced bits is shown in Figure 13 for level 0) The zone (see Figure 9) extends the I50832.doc -59-201211508 bit 70 inward section 812 of the block shown in Figure 11. As can be seen, each page contains the road segment count, ID and bit vector〇 ° ° * Figure 14 for Levels other than the level 扩展 extend the bit vector segment 812 of the talent case shown in Figure u. It can be seen that for other areas, the bit vector is stored and the road segment count or region m is not stored ( For the level, they are categorized.) In view of the difference in the area covered by the area of each level, the number of nodes per page in each level may vary. For example, because of the level, the area within the area covers a large area. For level 可能 there may be more nodes per page per zone. For example, 'for level 〇, some embodiments can store M2 P's per page per page, and the finer level can have a smaller number. Node_e.g., 256 nodes '128 nodes, 64 nodes, 32 nodes, 16 nodes or the like. In contrast, an embodiment may utilize 1 node per page, 2048 nodes, or 4 〇. 96 nodes. The encoding table 81 〇3 of the bit vector 810, 812 has a fixed size record. The originating node IDs are grouped together in 2n pages. 'Grouping data into pages with multiple consecutive nodes For convenience, because of the period, 7L to $ for the same neighbor Several road segments in $ have similar types. By using pages, it is possible to encode several road segments in delta and achieve good compression. Similarly, 'there may be differences in the node's area': another aspect of the page , which means that accessing the data of a road segment requires de-encapsulation of the right-hand road I (not directly random access). It may be necessary to decapsulate several nodes or road segments to access - road segments or nodes. The funding of 150832.doc -60-201211508 is considered acceptable because the data can be cached, so it will be useful soon after the #data"not a useless road segment is read. This additional information (four) - ahead) parameters). Pre-reading on disk cache • When compared with the Dijkstra A* path selection ratio, the path selection using the bit vector reduces the size of the extended search by -1 to the order of magnitude. By knowing the page as a group of materials, only the map is small

Ο J 口P刀仍需要解碼(沿著實 際路徑之頁)。 貝 •歸功於對區ID及位元向量之# 里之差異壓縮,其應顯著減小 經編碼之資料大小。 •頁減小索引之大小’因為如所描述,資料將儲存於側 檔案中。 /810内之每一記錄含有-「差異」欄位,纟用以找到 母頁之可變大小之開始的位置(相對於經内插位置的差 異)。每一差異之位元之數目儲存於標頭中。 為了存取區ID及位tl向量812,解碼ϋ可藉由進行以下 線性内插而計算開始頁之估計偏移: interpolated_offset=fr〇m_node_id*avg_pagesize 八中avg_page_size為儲存於標頭中之以位元計的平均頁 大小(可能為定點的以改良精確性)。可接著將資料之偏移 計算如下: 偏移 interpolated—offset+min—delta+delta 其中min—delta為所有頁之所有差異攔位之最小值(儲存 150832.doc ‘61 · 201211508 於標頭中),且差昱為禅十 、…储存於頁中的無正負號攔位。 min—delta值確保所有羔g 令是異襴位為正值(不儲存位元正 號)。 、 經由先前所描述之位元向 里貝貝之差異」搁位來存 取可變大小之記錄。 每一記錄含有2η個銘, 之貢料(始發節點之區ID及其在 所有等級處之所附接道 接道路段之位元向量)。同一編索引方 案因此將被用於所有等級。 可變大小記錄儲存: •頁碼-針對整個百_ /ι4> ^ 调貝心不彼頁内之節點是否為同一區之 部分之碼; •在位元向量頁φ夕# ^ 母—郎點周圍之道路段之數目(僅 等級0處儲存,因為其對於所有等級將為相同的); 頁中之始發即點之區m,每等級有一個⑴(針對所有 等級之資訊儲存於等級〇之擋案中㈣〇 *圳; •僅等級i處的在頁中之節點周圍(僅在具有>2個所附接 道路段之節點周圍)的道路段之位元向量。此為最大 部分之資料; •在每一節點周圍之道路段之數目的編碼。 對於位元向量頁中之)n袖々々机上 〒之2個即點中之母一者而言,霍夫曼 碼:瑪在該節點周圍之道路段之數目。此資訊並非具體到 所有專級,且其僅儲存於等級Q處之檔案中㈣q *圳。 知曉在節點周圍 # 固之道路^又之數目係用以解碼位元向量 (見 1000,圖 13)。 貝Λ,、已存在於其他樓案中之資訊重 150832.doc -62- 201211508 複但其使得更容易且快速地解碼頁十之位元向量,而無 /頁在另丨處查找彼資訊,藉此大小方面的小增加提供效能之 增加。 可變大小記錄中之區ID之編碼Ο J port P knife still needs to be decoded (along the page of the actual path). • Thanks to the difference compression between the zone ID and the bit vector, it should significantly reduce the size of the encoded data. • The page reduces the size of the index 'because the data will be stored in the side file as described. Each record in /810 contains a - "Difference" field, which is used to find the position of the variable size of the parent page (relative to the difference between the interpolated positions). The number of bits for each difference is stored in the header. In order to access the zone ID and the bit tl vector 812, the decoding 计算 can calculate the estimated offset of the start page by performing the following linear interpolation: interpolated_offset=fr〇m_node_id*avg_pagesize 八 avg_page_size is the bit stored in the header Average page size (possibly fixed to improve accuracy). The offset of the data can then be calculated as follows: offset shifted-offset+min-delta+delta where min-delta is the minimum of all differential intercepts for all pages (store 150832.doc '61 · 201211508 in the header) And the difference is Zen 10, ... the unsigned stop stored in the page. The min-delta value ensures that all lambs are ordered to be positive (do not store the positive sign). A record of a variable size is obtained by the placement of the previously described bit to the difference in the ribbed. Each record contains 2n metrics (the zone ID of the originating node and its bit vector attached to the road segment at all levels). The same indexing scheme will therefore be used for all levels. Variable size record storage: • Page number - for the entire hundred _ /ι4> ^ Whether the node in the page is the part of the same area; • On the bit vector page φ 夕 # ^ 母至郎点The number of road segments (stored only at level 0, as it will be the same for all levels); the starting point in the page is the point m, one for each level (1) (for all levels of information stored in the level) In the case of (4) 〇*zhen; • only the bit vector of the road segment around the node in the page at level i (only around the nodes with > 2 attached road segments). This is the largest part of the data. • The encoding of the number of road segments around each node. For the two of the two points in the bit vector page, the Huffman code: Ma is in the The number of road segments around the node. This information is not specific to all levels, and it is only stored in the file at level Q (4) q * Shenzhen. Knowing the number of roads around the node is also used to decode the bit vector (see 1000, Figure 13). Bessie, the information that already exists in other buildings, weighs 150832.doc -62- 201211508 but makes it easier and faster to decode the page ten-bit vector, and no/page looks for information in another place. This small increase in size provides an increase in performance. Encoding of the zone ID in a variable size record

•在編碼每一節點周圍的道路段之數目1000之後,在可變 ••大小記錄中編碼節點之區ID 1002(見編碼佈局)。為了執行 使用在預處理中產生的位元向量的路徑選擇,通常需要存 取給定節點之所有等級處的區1]0 1002,所有等級之區ID C) 被彼此靠近地儲存於相同檔案中,而非被分裂於每等級之 不同檔案中。 具有2n個節點(例如,n=4)且具有3個阿波羅等級之位元 向量頁因此將把節點ID儲存如下: node#0: I〇cal_region_id_level_0 local_region_id_level 1 local—region_id」evel_2 node#l: Iocal_region_id_level_0 local_region_id_level^l local_region id level 2 〇 ~ ~ node#2: l〇cal_region_id_level_〇 local_region_id_level^l local region id level 2 node#15: local—regi〇n—id level—〇 i〇cal_regi〇n—id—level l local_region—id—level_2 另外: •在具有1或2個所附接道路段之節點周圍,不編碼任何 東西(亦即,對於儲存〇作為所附接道路段之數目的節 150832.doc -63· 201211508 點而言)。 當在給定等級設定了頁碼中之位元時,則知曉所有節 點皆處於彼等級處之相同區叫,域著僅將彼等級 處^㈣編碼_次(對於具有>=3個所附接道路段之第 一節點)。用來編碼區ID之位元之數目為i〇g—2 (regionCount-l) ° •除了頁中的區膽編碼之第一節點之外,在編碼每一 區1D之前亦編碼一位元。此位元指示區m是否與處於 同一等級的先前經編碼之節_相同。當此位元被設 定時,無需編碼該區1D,因為其與彼等級的先前所編 碼者相同。當此位元為〇時,以㈣—冲咖心⑽叫 個位兀編碼區ID。由於許多連續節點在同一區中,故 常常僅需要1個位元來編碼區ID。 對本地區索引之霍夫曼編碼為有效的,因為: •在每一區頁中按頻率將區分類(所以本地索引0比本地 索引1更頻繁,...)。 十於頁中之每-數目個區存在相異的專門之霍夫曼樹 (對於頁中之3個區存在1個霍夫曼,對於頁中之4個區 存在1個霍夫曼樹,等等)。霍夫曼樹為小的,且因而 有可此在不使用大量記憶體的情況下儲存若干個霍夫 曼樹。 ”、、’如何’至少在等級0處’具有3個區或3個區以上 應為相當罕見的(但在其他等級處並不罕見)。 可變大小記錄中之位元向量之編碼 150832.doc -64- 201211508 二:=::=1:- 段)之節點周圍編碼位元向量 段(道路 道路段之節點而言,路握選擇方法;個所附接 U1.·.111)隱含地賦予彼等節點。 值 不編碼到達節點。 參看圖10 ’應注意’可由兩個節點指定一道路段 ❹ 道路段的每一末端處有一個節點。因&,當考慮方向日士了 ::向之開始處之節點可被稱作fr〇m_n〇de,且在末:處 之郎點可被稱作to_node。 在編碼内使用關於位元向量之各種性f以使得編 率: •位元向量中之許多者為〇〇〇 〇〇〇或j丨i丨丨丄。 •對於位元向量之其他值(亦即,非〇〇〇 〇〇〇或lu ui) ’很可能存在重複且相同值將很可能被重複。 〇 •又,對給定節點周圍的所有位元向量之邏輯或應為 111...111。 將位元向量編碼為第一霍夫曼碼及可選的其他霍夫曼 碼。第一霍夫曼碼指示位元向量是否為: •針對平凡位元向量〇〇〇 〇〇〇之碼〇 •針對平凡位元向量1 11... 1 11之碼1 •碼2,用以指示在該頁中尚未遇到非平凡位元向量。 在此狀況下且僅在此狀況下,後接有其他霍夫曼碼以 編碼新遇到之位元向量。 150832.doc 65 · 201211508 •當位元向量與在當前頁中先前遇到之位元向量相同時 (忽略平凡位元向量000…000及,碼>=2。此 編碼因此使用該頁中先前遇到之碼的歷史。該碼因而 實際上按所有先前遇到之碼之歷史給出索引。 除了此霍夫曼碼之外,僅在於歷史中未找到的非平凡位 元向量的狀況下’需要編碼更多資訊(碼=2)。在此狀況 下’緊接在霍夫曼碼==2之後,編碼有: •否定位元 •用以藉由N個位元之區塊編碼n個區之位元向量之若干 霍夫曼碼(Ν及η給出於地圖標頭中)。舉例而言,使用 11個位元之區塊編碼1 〇〇個區(99位元位元向量)需要 編碼9個霍夫曼碼(9 X 11 =99)。 由於大多數位元向量主要含有〇或含有1,故否定位元指 示該位元向量是否被儲存為否定的。此使得能夠在霍夫曼 樹中儲存決大多數含有〇的碼(因此,改良區塊之霍夫曼編 碼)°僅在區塊之大小小於區之數目的情況下存在否定位 元’此為實際上在等級〇處之狀況,但在等級1或2處,可 月b在僅1個區塊中編碼整個位元向量,所以否定位元為不 需要的。 若存在100個區;N=100(因此,99位元之位元向量),則 第一區塊編碼針對目的地區1至丨丨之位元,第二區塊編碼 區12至22,等等。在第一區塊中,LSB(Oxl)對應於目的地 區1 ’下一位元(0x2)對應於區2,下一位元(0x4)對應於區 3,等等。 150832.doc -66 - 201211508 對於使用歷史之位元向量而言,歷史陣列之深度為頁 之先前遇到之相異位元向量之數目(不考麿 _ ’愿十凡位元向量 〇〇〇..·〇〇〇及111…111)。當歷史向量含有〇個元素、1個一 素、2個元素、3個元素等等時,使用不同霍夫曼樹。^ 等霍夫曼樹倍增為可接受的,因為所有霍夫曼樹皆為 的’且因而不需要大量儲存器: 、• Encode the zone ID 1002 of the node in the variable •• size record after encoding the number 1000 of road segments around each node (see Code Layout). In order to perform path selection using the bit vector generated in the preprocessing, it is usually necessary to access the area 1] 0 1002 at all levels of the given node, and the area IDs C) of all levels are stored in the same file close to each other. Instead of being split into different files at each level. A bit vector page with 2n nodes (eg, n=4) and having 3 Apollo levels will therefore store the node ID as follows: node#0: I〇cal_region_id_level_0 local_region_id_level 1 local—region_id”evel_2 node#l: Iocal_region_id_level_0 Local_region_id_level^l local_region id level 2 〇~ ~ node#2: l〇cal_region_id_level_〇local_region_id_level^l local region id level 2 node#15: local—regi〇n—id level—〇i〇cal_regi〇n—id—level l local_region—id—level_2 In addition: • No code is coded around nodes with 1 or 2 attached road segments (ie, for storage 〇 as the number of attached road segments 150832.doc -63· 201211508 points). When the bit in the page number is set at a given level, then it is known that all nodes are in the same zone at the same level, and the domain only encodes the number of times (^) _ times (for having >=3 attached) The first node of the road segment). The number of bits used to encode the zone ID is i〇g-2 (regionCount-l) ° • In addition to the first node of the zone code in the page, a bit is also encoded before encoding each zone 1D. This bit indicates whether the area m is the same as the previously encoded section _ at the same level. When this bit is set, there is no need to encode the zone 1D because it is the same as the previous code of the other class. When this bit is 〇, it is called the code area ID by (4)-Chong Xin (10). Since many consecutive nodes are in the same zone, it is often only necessary to encode the zone ID by 1 bit. The Huffman coding of the index of the region is valid because: • The regions are sorted by frequency in each zone page (so the local index 0 is more frequent than the local index 1, ...). There are different Huffman trees in each of the ten-pages (one Huffman for the three regions in the page, and one Hoffman tree for the four regions in the page). and many more). The Huffman tree is small, and thus it is possible to store several Huffman trees without using a large amount of memory. "," 'How to 'at least at level 0' has 3 zones or more than 3 zones should be quite rare (but not at other levels). The code of the bit vector in the variable size record 150832. Doc -64- 201211508 Second:=::=1:- Segment) The coded bit vector segment around the node (the node of the road segment, the road grip selection method; the attached U1.·.111) implicitly Assigned to their nodes. Values are not coded to reach the node. See Figure 10 'It should be noted' that two nodes can specify a road segment ❹ There is a node at each end of the road segment. Because &, when considering the direction of the Japanese:: The node at the beginning can be called fr〇m_n〇de, and the point at the end: can be called to_node. The various properties f about the bit vector are used within the encoding to make the encoding: • Bit vector Many of them are 〇〇〇〇〇〇 or j丨i丨丨丄. • For other values of the bit vector (ie, non-〇〇〇〇〇〇 or lu ui) 'very likely duplicates and the same value Will probably be repeated. 〇• Again, the logic of all the bit vectors around a given node Or should be 111...111. The bit vector is encoded as the first Huffman code and optionally other Huffman codes. The first Huffman code indicates whether the bit vector is: • For a trivial bit vector 〇〇〇〇〇〇之〇 • For the ordinary bit vector 1 11... 1 11 code 1 • Code 2 to indicate that a non-trivial bit vector has not been encountered in this page. Only in this case, there are other Huffman codes followed to encode the newly encountered bit vector. 150832.doc 65 · 201211508 • When the bit vector is the same as the bit vector previously encountered in the current page ( Ignore the trivial bit vector 000...000 and the code >= 2. This encoding therefore uses the history of the previously encountered code in the page. The code is thus actually indexed by the history of all previously encountered codes. In addition to this Huffman code, only in the case of non-trivial bit vectors not found in history, 'need to encode more information (code = 2). In this case' immediately following Huffman code == 2 After that, the encoding is: • No locating element • A number of bit vectors used to encode n regions by blocks of N bits The Fuman code (Ν and η are given in the icon head). For example, using 11 blocks of block encoding 1 区 area (99 bit vector) requires encoding 9 Huffman codes. (9 X 11 = 99) Since most of the bit vectors contain 〇 or contain 1, the locator indicates whether the bit vector is stored as negative. This makes it possible to store most of the contents in the Huffman tree. 〇 code (hence, Huffman coding of the improved block) ° Only if the size of the block is smaller than the number of zones, there is no locator 'this is actually the situation at the level ,, but at level 1 or At 2, the monthly bit b encodes the entire bit vector in only 1 block, so no positioning element is unnecessary. If there are 100 zones; N=100 (hence, a bit vector of 99 bits), then the first block encodes the bits for the destination area 1 to ,, the second block coding area 12 to 22, etc. . In the first block, the LSB (Oxl) corresponds to the destination area 1 'the next bit (0x2) corresponds to the area 2, the next bit (0x4) corresponds to the area 3, and so on. 150832.doc -66 - 201211508 For the bit vector using history, the depth of the historical array is the number of distinct bit vectors previously encountered by the page (not considered _ 'willing ten bits vector 〇〇〇 ..·〇〇〇 and 111...111). Different Huffman trees are used when the history vector contains one element, one element, two elements, three elements, and the like. ^ The Huffman tree multiplication is acceptable because all Huffman trees are both 'and thus do not require a large amount of storage:

•當歷史具有0個元素時,霍夫曼樹具有3個碼:針對 〇〇〇...〇〇〇之〇、針對111."111之1、針對新位元向量之2。 •當歷史具有丨個元素時,霍夫曼樹具有4個碼··針對 〇〇〇·.·_之0、針對⑴…⑴之!、針對新位元向量之 2、針對與歷史中之元素#0相同之位元向量之3。 •當歷史具有2個元素時,霍夫曼樹具有5個碼:針對 _...000之0、針對⑴…川之丨、針對新位元向量之 2、針對與歷史中之元素#0相同之位元向量之3、針對 與歷史中之元素#1相同之位元向量之4。 •等等。 預期位it向量頁之大小為小的(例如,2„個始發節點), 所以預期霍夫曼樹之數目為小的。 然而,有可能將霍夫曼樹之大小限於最大值:例如,每 當歷史含有Η以上個元素時,皆將使用單—霍夫曼樹(值η 儲存於地圖標頭中)。 此編碼僅編碼每一頁中之相異位元向量_ 一些碼。 在大的索引頁的情況下,該編碼在大小上較有效率,但 代價是為了使用位元向量來進行路徑選擇而減慢了解碼 150832.doc -67- 201211508 (頁中有更多位元向量要解碼)。 統計資料 此處為在按254個區(ι等級 >編碼荷蘭,比利時及盧森堡 時之檔案格式的詳細統計資料。使用以下輸入表數· 每位元向量區塊之位元數目:11 每位元向量頁之節點數目:2八4=16 每區頁之節點數目:2Λ9 = 512 提供統計資料以在地圖大小方面給出地圖形、 且基於一些實際資料說明地圖格式的描述: 之概念, —全域統計資料計數器: 1SSS632 -598632 22〇1δ〇 72'?138 (45,5|; 87437736 13l〇9i4 yi3348 36243? 607717 235171 87437736 4 Q f 2880a ^5 G64 5621s 249788。 84§〇l672 2847844 211245^ 79841370 1639322 i 8 2 b69 6 I668053 i463l83 607717• When the history has 0 elements, the Huffman tree has 3 codes: for 〇〇〇...〇〇〇, for 111."1111, for the new bit vector. • When history has one element, the Huffman tree has 4 codes·· for 〇〇〇···_0, for (1)...(1)! For the new bit vector 2, for the same bit vector as the element #0 in history. • When the history has 2 elements, the Huffman tree has 5 codes: 0 for _...000, for (1)... Chuanzhi, 2 for the new bit vector, 2 for the element in history and #0 3 of the same bit vector, 4 for the same bit vector as element #1 in history. •and many more. It is expected that the size of the bit it vector page is small (for example, 2 „original nodes), so the number of Huffman trees is expected to be small. However, it is possible to limit the size of the Huffman tree to a maximum value: for example, Whenever history contains more than one element, a single-Huffman tree (the value η is stored in the map icon header) will be used. This code encodes only the distinct bit vector _ some codes in each page. In the case of an index page, the encoding is more efficient in size, but at the cost of slowing down the decoding in order to use the bit vector for path selection. 150832.doc -67- 201211508 (There are more bit vectors in the page to be Decoding) Statistics Here is a detailed statistic of the file format in 254 regions (ι grades > encoding Netherlands, Belgium and Luxembourg. Use the following input table number • Number of bits per bit vector block: 11 Number of nodes per bit vector page: 2 8 4=16 Number of nodes per zone page: 2Λ9 = 512 Provide statistics to give a map in terms of map size and a description of the map format based on some actual data: concept, - Global statistical counter: 1SSS632 -598632 22〇1δ〇72'?138 (45,5|; 87437736 13l〇9i4 yi3348 36243? 607717 235171 87437736 4 Q f 2880a ^5 G64 5621s 249788. 84§〇l672 2847844 211245^ 79841370 1639322 i 8 2 b69 6 I668053 i463l83 607717

74g5729974g57299

節點計數.............................. 線路言.............................. 跳過具有1條線路之節點周圍之線路·-跳過具有2條線路之節點周圍之線路., ---在等級=[0]處之統計資料: 地圖計數器........................ 經編碼之平凡arp旗標〇〇〇..,〇〇〇 經編碼之平凡aip旗標in... 111 歷史中之經編碼之arp旗標....... 不在歷史中之經編碼之arp旗標·.. 否定區塊................... 地圖大小(以位元計)................... t域標#...................... 霍夫曼樹................... 區二進位大型物件........................ 區頁資訊................. arp旗標頁資訊-* *............. 可變大小記錄............... 節點周圍之線路計數.......... ίρ 點區 ID.......,.......... ............................. 碼平凡000...〇〇〇......... 碼平凡111...Ill ......... 在歷史中找到之碼.....:…… 未在歷史中找到.........*. 未在歷史中找到之·. 否定位 7L … ......................... 150832.doc -68- 201211508 所有大小以位元計。總地圖大小為87,437,736個位元 (1〇,929,717 個位元組)。 縮進反映了階層。可變大小記錄資訊為最大片資訊(地 圖大小之96.975%)。在可變大小記錄中,子項目(縮進的) 給出更多細節。位元向量為可變大小記錄中要儲存之最大 片資訊(91.3120/。)。且在位元向量中,儲存在歷史中尚未 遇到之非平凡位元向量構成了地圖之最大部分(83 〇15%) C 關於霍夫曼樹之統計資料Node count.............................. Line words................ .............. Skip the line around the node with 1 line. - Skip the line around the node with 2 lines. , --- at level = [0] Statistics: Map counters........................ Coded ordinary arp flag 〇〇〇.., 〇〇〇 encoded ordinary Aip flag in... 111 encoded arp flag in history....... not encoded in the history of the arp flag... negative block.......... ......... Map size (in bits)................... t domain standard #.......... ............ Hoffman Tree................... District II carry large objects.......... .............. Area page information................. arp flag page information-* *........ ..... Variable size record............... Line count around the node.......... ίρ Point area ID....... ,.......... ............................. Code ordinary 000...〇〇〇. ........ Code ordinary 111...Ill ......... The code found in history.....:...... Not found in history....... ..*. Not found in history.. No positioning 7L ... ......................... 150832.doc -68- 201211508 All sizes are in bits. The total map size is 87,437,736 bits (1〇, 929, 717 bytes). Indentation reflects the hierarchy. The variable size record information is the maximum piece of information (96.975% of the map size). Sub-items (indented) give more detail in variable-size records. The bit vector is the largest piece of information (91.3120/.) to be stored in the variable size record. And in the bit vector, the non-trivial bit vector that has not been encountered in the history constitutes the largest part of the map (83 〇 15%) C. Statistics about the Huffman tree

此節給出在按255個區(亦即,針對上文所展示之地圖資 料)編碼荷蘭,比利時及盧森堡時之霍夫曼樹的統計資 料。 胃 在每一節點周圍之道路段之數目的霍夫曼樹 一-I 霍夫曼樹: NrLines 位元:1 值: 3_.瑪 10 110 1110 11110 111X10 U11110 1111111 位元:.2 .值: 2 碼 位元:3 值: _ 1.碼 位元:4 值: 4 碼 位元:_ 5值: 5 _碼 位元:6 值: 6 碼 位元:7 值: 7 碑 位元:7 值: 8 _碼 大多數節點具有3個所附接的道路段,但在該霍夫甚樹 中之第2位置及第3位置中,吾人發現具有2個所附接:路 段及1個所附接道路段之節點(其不為決策節點)。 非平凡位元向量區塊之霍夫曼樹 此為最大的霍夫曼樹,因為平凡位元向量之儲存區塊為 最大的地圊大小貢獻因素(在荷蘭,比利時及盧森堡255區 之實例中,為83.015%)。 150832.doc •69- 201211508 位元:1 值 0 位元:6: 值 I 位元:6 值 2 位元:6 值 4 位元:6 值 δ 位元· 6 值 16 位元:6 值 32 位元:6 值 64 位7C · ^ 值 512 位7C _ g 值 1024 位元:7 值 128 位元:7 值 256 位元:_7 值 384 位元:8 值 5 剪斷,太大 霍夫曼樹:非平凡Arp旗標區塊 瑪 0 碼 100000 碼 1Q0001 100010 碼 100011 碼 100100 碼 100101 碼 100110 碼 1001.11 碼 101000 碼 1010010 碼 1010011 碼 1010100 碼 10101G10 位70 : 24 位元:24 位元:24 位元::2.4 位元:24 值值值值值 1534 1717 1741 1830 1973 碼碼碼碼碼 i 11111111111111111 x i q x i 1111H11111U1IX11111101 儲存全部由〇構成之區塊為最頻繁型樣,且根據上文之 霍夫曼樹以僅1個位元來編碼(此意謂即使平凡位元向量 〇〇〇···000不按區塊編碼,50%或50%以上的區塊亦編碼值 〇)。此係因為大多數非平凡位元向量含有 •大部分〇(及少數1) •或大部分1(及少數0) 該編碼方案否定(〜)含有大部分1之位元向量,所以最 後’位元向量之編碼區塊大部分情況下僅以1位元編碼含 有〇〇〇 ... 000之區塊。次頻繁的區塊為僅設定1位元之區塊 (1 ' 2 ' 4、8、16 ' 32、64.·.)。其具有或多或少相同的頻 率’因此具有相同(或幾乎相同)數目個位元。 本地區ID之霍夫曼樹 由於將區之清單按頻率儲存於每一頁中,故可看到,與 150832.doc •70· 1211508 其他所在地的區ID相比,儲存本地區m 〇佔用較少位元 (事實上僅1位元)。不同霍夫曼樹對應於具有3個區、4個 區、5個區等等之頁。 ❹ 霍夫曼樹:Regions ---[ 位元: 位元: 位元: 元元元元 位位位位 1 值 0碼 2 值 1.碼 2 值 2碼 霍夫曼樹 Regions 1 值 0碼 2 值 1碼 3 值 2碼 3 值 3碼 0 10 11 10 110 111 —f 霍夫曼樹 位元:1 值: 位元:2 值: 位元:3 值: 位元:4 值: 位元:4 值:This section gives statistics on the Hoffman tree when encoding the Netherlands, Belgium and Luxembourg in 255 zones (i.e., for the map data shown above). Huffman tree-I Hoffman tree of the number of road segments around the stomach of each node: NrLines Bits: 1 Value: 3_.Ma 10 110 1110 11110 111X10 U11110 1111111 Bit: .2 .Value: 2 Code bit: 3 Value: _ 1. Code bit: 4 Value: 4 code bits: _ 5 value: 5 _ code bit: 6 Value: 6 code bits: 7 Value: 7 Station bit: 7 value : 8 _ yards Most nodes have 3 attached road segments, but in the 2nd and 3rd positions in the Hofhe tree, we found that there are 2 attached: road segments and 1 attached road segment The node (which is not the decision node). Huffman tree of non-trivial bit vector block This is the largest Huffman tree, because the storage block of the trivial bit vector is the largest mantle size contribution factor (in the case of the Netherlands, Belgium and Luxembourg 255) , for 83.015%). 150832.doc •69- 201211508 Bits: 1 Value 0 Bits: 6: Value I Bits: 6 Value 2 Bits: 6 Value 4 Bits: 6 Value δ Bits · 6 Values 16 Bits: 6 Values 32 Bit: 6 Value 64 bit 7C · ^ Value 512 bit 7C _ g value 1024 bit: 7 value 128 bit: 7 value 256 bit: _7 value 384 bit: 8 value 5 cut, too large Huffman Tree: Non-trivial Arp flag block Ma 0 code 100000 code 1Q0001 100010 code 100011 code 100100 code 100101 code 100110 code 1001.11 code 101000 code 1010010 code 1010011 code 1010100 code 10101G10 bit 70: 24 bit: 24 bits: 24 bits ::2.4 Bits: 24 Value Value Value 1534 1717 1741 1830 1973 Code Code Code Code i 11111111111111111 xiqxi 1111H11111U1IX11111101 Store all the blocks formed by 〇 as the most frequent type, and according to the Huffman tree above Only one bit is encoded (this means that even if the trivial bit vector 〇〇〇···000 is not block-coded, 50% or more of the blocks encode the value 〇). This is because most non-trivial bit vectors contain • most 〇 (and a few 1) • or most 1 (and a few 0). The encoding scheme negates (~) contains most of the 1 bit vector, so the last 'bit In most cases, the coding block of the meta-vector encodes a block containing 〇〇〇... 000 in only one bit. The next most frequent block is a block of only 1 bit (1 ' 2 ' 4, 8, 16 ' 32, 64.·.). It has more or less the same frequency' and therefore has the same (or nearly the same) number of bits. The Hoffman tree of the ID of this area is stored on each page by frequency, so it can be seen that compared with the area ID of 150832.doc •70· 1211508 other places, the storage area of the area is smaller than that of the area. Less bits (in fact only 1 bit). Different Huffman trees correspond to pages having 3 zones, 4 zones, 5 zones, and the like.霍夫 Hoffman Tree: Regions ---[ Bits: Bits: Bits: Elements Meta-Bit Bits 1 Value 0 Code 2 Value 1. Code 2 Value 2 Code Huffman Tree Regions 1 Value 0 Code 2 Value 1 code 3 Value 2 code 3 Value 3 code 0 10 11 10 110 111 —f Huffman tree bit: 1 Value: Bit: 2 Value: Bit: 3 Value: Bit: 4 Value: Bit :4 value:

2 ns.—碼.碼碼碼碼 10 110 mo 11112 ns.-code. Code code 10 110 mo 1111

ns'碼碼碼碼碼碼Ns' code code code code

TJ 元元元元元元 位位位位位位TJ element, element, bit, bit

接 曼............ 夫值值值值值值 霍 〇 .10 110 1110 11110 11111 · ·剪斷· * · 位元向量歷史碼之霍夫曼樹 碼〇(意謂平凡位元向量〇〇〇…〇〇〇)為最頻繁的(且在大夕 數狀況下,僅以1位元編碼)。碼丨(平凡位元向量u i · · ·丄 1 1) 就為次頻繁的(且僅以1位元編碼)。再次頻繁的碼(2)係針 對按區塊編碼之非平凡位元向量。其他碼(>2)針對在▼史 中找到的位元向量。 150832.doc •71 · 201211508 位元·_ 位元'· 位元: 樹曼...... 夫值值值 霍.' rp 位元: 位元: 位元: 位元: 樹 @又........ 夫值值值值 霍 F..~ "碼碼ag碼碼碼碼 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元: 位元= 位元: 位元= 位元= 位元: 位元 位元= 位元: 位元: 位元: 樹 Μ........... Af值值值值值Α·值值值值值值ΑΙ值值值值值值值A3值值值值值值值值 霍霍 霍 霍 樹曼 樹 曼 2 3 碼碼碼碼碼 ο 10 210 1110 1111 碼碼碼瑪碼碼 碼碼碼碼碼碼瑪 …Eyv UifT> 竭竭竭碼碍碑碑喝 ο 10 110 1110 1.1.110 11111 ο 10 110 1110 11110 111110 111111 00 01 10 1100 1101 1110 11110 11111 .·-剪斷-·. 輸入參數對地圖大小之影響 存在若干輸入參數,其控制圖8中所展示之檔案格式且 可影響地圖大小。對該等參數之調整可為地圖大小與記憶 150832.doc -72- 201211508 體使用或解壓縮速度(視參數而定)之間的拆衷 本發明之實施例可使用以下輸入參數: •區頁大小 •位元向量頁大小 •位元向量區塊大小 •位元向量霍夫曼碼計數 •區霍夫曼碼計數 位元向量區塊大小之影響 Ο __色_. 圖△少(位元) 4 35548192 5 33648792 6 32290344 7 30853616 8 31103200 9 3043669S (預設) 10 30051792 11 2S266784 12 28934696 增加位元向量之霍夫曼區塊大小會改良地圖壓縮。區土 大小愈高,壓縮愈好。但增加區塊大小是以 品塊 而变更多記憶 體來儲存具有2八11個值之較大霍夫曼樹為代價的。上 表說明此情況。 當引入最佳化以重新映射每源區之區ID時, 4 頂期此參數 之影響變得更重大:在使用大的位元向量區塊大小時 最佳化將有希望導致顯著的地圖大小減小。 位元向量頁大小之影響 150832.doc •73- 201211508 地圖大小(位元) 2Λ1 55563944 2'2 42502936 2Λ3 34898840 2Λ4 30436.696 (預設) 2Λ5 2.7389952 2Λ6 25165032 2Λ7 23635936 増加頁大小有助於更好地壓縮地圖。但遺憾的是,大 頁使路偟選擇方法對檔案格式中之資料的解壓縮減緩,因 為存取隨機道路段之位元向量需要解碼頁中之所有道路 段。上文之表說明此情況。 位元向量霍夫曼碼計數之影響 值 地圖大小(位元) - — — 一 1 30866320 2 30748024 3 30634168 5 30504504 7 30467944 5' 3〇4366S6 (預設) 11 30423688 增加位兀向量霍夫曼碼之數目有助於稍微增加壓縮,且 在上文之表中說明此情況。增加該值幾乎不存在缺點,因 為無論如何彼等霍夫曼樹為小的。增加到超過9個霍夫曼 樹(預設值)不提供任何顯著改良。在位元向量頁較大的情 況下,增加此參數可能更有效。 聚結及重新排序位元向量中之位元 位元向量具有型樣。每一源區(亦即,儲存位元向量之 節點之區)之彼等型樣顯著不同。可藉由儲存每一源區之 小的轉譯表而減少用以儲存⑽元之位元向量之位元數 目此等表執行2個功能,其進一步描述於此節中: ^0832.(30( -74· 201211508 •位元聚結 •位元重新排序 θ 了::?將此想法理解如下:當在西班牙時,清楚的 ^。%典之道路段(針對目的地區瑞典之位元=1)極可 > 向挪威(亦即’針對目的地挪威之位元接著亦為1)。 二路’又不通向瑞典(位元=0) ’則在大多數狀況下其 Ο Ο ^位^!"威。所以#在西班牙時,目的地區瑞典及挪威 之位7G向罝位元之值幾 手〜疋相4。事實上,對於許多目 :而δ ’其甚至總是嚴格地相等。哪些位元與哪-位 兀充分相關很大程度上取決於始發區。 舉例而言’當在答赫士 才,目的地區挪威及瑞典之位元的 相關性小得多。另^ —. ,在芬蘭,目的地區西班牙及葡 …位兀很可能100%相關(或至少極接近麵)。 位元聚結利用了一此 他H — 疋、,,悤疋相等(完全相關)之性質。 彼等位7〇可聚結成單— , 凡。聚結位元減少了在每一區中 要編碼之位元數目。 位元重新排序利用了一此 mn〇/iB 二位兀的相關性相當高(但並非 1 00 /〇相關)的性質,以 ^ + 最么化對位元向量之霍夫曼編 碼(及/或減小霍夫曼樹之 )之方式混洗(shuffle)位元。 150832.doc -75- 201211508接曼............ 值值值值值值值霍〇.10 110 1110 11110 11111 · · Shear · * · Huffman tree code 位 of the bit vector history code It is said that the trivial bit vector 〇〇〇...〇〇〇) is the most frequent (and in the case of large eves, only one bit is encoded). The code 丨 (trivial bit vector u i · · · 丄 1 1) is the next most frequent (and only 1 bit coded). Again frequent code (2) is a non-trivial bit vector encoded by block. The other code (>2) is for the bit vector found in the history of ▼. 150832.doc •71 · 201211508 bit·_ bit '· bit: tree man... fut value value.' rp bit: bit: bit: bit: tree@又. ....... Fu value value value Huo F..~ " Code code ag code code code bit: Bit: Bit: Bit: Bit: Bit: Bit: Bit: Byte: Bit: Bit: Bit: Bit: Bit: Bit: Bit: Bit = Bit: Bit = Bit = Bit: Bit Bit = Bit: Bit: Bits: Tree Μ........... Af value value value value Α value value value value value ΑΙ value value value value value value value A3 value value value value value value value value hohohoho tree Manshuman 2 3 code code code ο 10 210 1110 1111 code code code code code code code code code... Eyv UifT> exhaustion of exhaustion ο 10 110 1110 1.1.110 11111 ο 10 110 1110 11110 111110 111111 00 01 10 1100 1101 1110 11110 11111 .··Scission-·. Effects of input parameters on map size There are several input parameters that control the file format shown in Figure 8 and can affect the map size. Adjustments to these parameters may be a compromise between map size and memory 150832.doc -72 - 201211508 body usage or decompression speed (depending on parameters). The following input parameters may be used in embodiments of the invention: • Area page Size • Bit Vector Page Size • Bit Vector Block Size • Bit Vector Huffman Code Count • Area Huffman Code Count Bit Vector Block Size Effect __Color_. Figure △ Less (bits) ) 4 35548192 5 33648792 6 32290344 7 30853616 8 31103200 9 3043669S (default) 10 30051792 11 2S266784 12 28934696 Increasing the Huffman block size of the bit vector improves map compression. The higher the size of the soil, the better the compression. However, increasing the block size is at the expense of storing more memory for the block to store larger Huffman trees with 2,8 11 values. The above table illustrates this situation. When optimization is introduced to remap the zone ID for each source zone, the impact of this parameter becomes even more significant: optimization when using large bit vector block sizes will hopefully result in significant map size Reduced. Bit vector page size effect 150832.doc •73- 201211508 Map size (bits) 2Λ1 55563944 2'2 42502936 2Λ3 34898840 2Λ4 30436.696 (default) 2Λ5 2.7389952 2Λ6 25165032 2Λ7 23635936 页Page size helps to better compress map. Unfortunately, the large page slows down the decompression of the data in the file format by the way the path selection method is accessed, since accessing the bit vector of a random road segment requires decoding all the road segments in the page. The table above illustrates this situation. Bit vector Huffman code count effect value map size (bits) - — — 1 1 30866320 2 30748024 3 30634168 5 30504504 7 30467944 5' 3〇4366S6 (default) 11 30423688 Add bit vector huffman code The number helps to increase the compression slightly, and this is illustrated in the table above. Increasing this value has almost no disadvantages, because the Huffman trees are small anyway. Adding to more than 9 Huffman trees (preset values) does not provide any significant improvement. Increasing this parameter may be more efficient when the bit vector page is large. The bitwise vector in the coalescing and reordering bit vector has a pattern. Each of the source regions (i.e., the regions of the nodes storing the bit vectors) are significantly different in type. The number of bits used to store the bit vector of (10) elements can be reduced by storing a small translation table for each source region. These tables perform two functions, which are further described in this section: ^0832.(30( -74· 201211508 • Bit coalescing • Bit reordering θ ::? Understand this idea as follows: When in Spain, clear ^.% of the road section (for the destination region of Sweden bit = 1) Can> to Norway (that is, 'the destination for the destination of Norway is also 1). The second road 'no access to Sweden (bit = 0) 'in most cases its Ο Ο ^ bit ^!&quot威. So # in Spain, the destination area of Sweden and Norway 7G to the value of the 罝 position a few hands ~ 疋 phase 4. In fact, for many purposes: and δ 'It is always strictly equal. Which bits The full correlation between the yuan and the - 很大程度上 depends largely on the originating area. For example, 'When in Hex, the target regions of Norway and Sweden are much less relevant. Another ^ —. Finland, the destination region of Spain and Portugal... is likely to be 100% relevant (or at least very close to the surface). Take advantage of the nature of his H - 疋, , , 悤疋 equal (completely related). They can be clustered into a single -, where. The coalesced bit reduces the number of bits to be encoded in each region. The number of bits is reordered using a property of this mn〇/iB two-position 相当 which is quite high (but not 100 〇 〇), with ^ + maximizing the Huffman coding of the bit vector ( And shuffle the bits in the manner of reducing the Hoffman tree. 150832.doc -75- 201211508

經重新排序之位a丨按區舰行霍夫曼編瑪之位元 〜 + ΛThe reordered position a丨 by the regional ship Hoffman compiled by the bit ~ Λ

BeorderEits() (2) 聚結之位元 I完全相關之位元之群組 +被聚結成單一位元》 人 \BeorderEits() (2) Agglomerated bits I completely related to the group of bits + are agglomerated into a single bit"

II

CcciIe.3ceB.it3 (} \ . 待聚結+重新排序之原始位元 ― ^ 一一 · · ^ —祕—^ + 在計异用以聚結位元及將位元重新排序之表之前,計算 所有始發區中的所有位元對之相關性。相異對之數目為: C(N, 2)=Ν!/(2!*(Ν-2)!)=Ν*(Ν-1)/2 …其中N為區之數目。因此當區之數目為高的時,此數目 為相當高的。計算所有位元相關性為產生圖丨丨中所展示之 檔案格式之方法的最慢部分。該方法之複雜性為ηχΝχΝ, 其中η為位元向量之數目,且ν為區之數目。對於每一區中 之母一位元對(亦即,位元向量中之相異行之對),計算二 維表: bitCorrelation[fromRegionId][bitI][bitJ]。 表中之每一輸入項含有4個欄位之結構,其計數: • fromRegionld之所有位元向量中bitl=0及bitJ = 0之次數 • fromRegionld之所有位元向量中bitl = 0及bitJ=l之次數 • fromRegionld之所有位元向量中bitl=l及bitJ = 0之次數 • fromRegionld之所有位元向量中bitl=l及bitJ=l之次數 150832.doc -76- 201211508 雖然在處理器時間方面計算成本高昂(且因此緩慢),但 可易於將此過程平行化,因為計算每一始發區之位元相關 性完全獨立於其他始發區。 本發明之實施例使用多執行緒以加速所有位元之相關性 之計算以有效地使用SMP(對稱多重處理)機器。在一系統 : 中,單CPU機器計算具有300個區的荷蘭,比利時及盧森 堡之位元相關性花費了約8分鐘。但平行處理原則 (parallelism)很好地按比例調整,且在啟用執行緒且使用4 Ο 個cpiJ時,計算位元相關性就花費2分鐘(為原來的4分之 一)。 位元聚結CcciIe.3ceB.it3 (} \ . The original bit to be coalesced + reordered - ^ 一 · · ^ - secret - ^ + Before calculating the table used to coalesce the bits and reorder the bits, Calculate the correlation of all pairs of bits in all originating zones. The number of distinct pairs is: C(N, 2)=Ν!/(2!*(Ν-2)!)=Ν*(Ν-1 ) / 2 ... where N is the number of zones. Therefore, when the number of zones is high, this number is quite high. Calculating all bit correlations is the slowest way to generate the file format shown in the figure. The complexity of the method is ηχΝχΝ, where η is the number of bit vectors, and ν is the number of regions. For the parent bit pair in each region (ie, the different rows in the bit vector) To), calculate the two-dimensional table: bitCorrelation[fromRegionId][bitI][bitJ]. Each entry in the table contains a structure of 4 fields, and its count: • bitl=0 and bitJ in all bit vectors of fromRegionld = 0 times • Number of bitl = 0 and bitJ = l in all bit vectors fromRegionld • Number of bitl = l and bitJ = 0 in all bit vectors fromRegionld • fromRegio The number of bitl=l and bitJ=l in all bit vectors of nld is 150832.doc -76- 201211508 Although the calculation is costly (and therefore slow) in terms of processor time, it is easy to parallelize this process because each calculation The bit correlation of an originating zone is completely independent of the other originating zones. Embodiments of the present invention use multiple threads to speed up the calculation of the correlation of all bits to effectively use SMP (Symmetric Multiprocessing) machines. System: In a single CPU machine, it takes about 8 minutes to calculate the bit correlation of the Netherlands, Belgium and Luxembourg with 300 zones. But the parallelism principle is well scaled, and the thread is enabled and used. When 4 c cpiJ, it takes 2 minutes to calculate the bit correlation (the original one-fourth).

當若干位元完全相關(亦即,總是全部為〇或全部為U 時,可在不釋放任何資訊的情況下將其聚結成僅丨個位 凡。將在給定區中的完全相關之位元集合稱為「群組」, 則給定區之位元向量由若干群組構成。若N位元之位元向 量由η個群組構成,則編碼N位元之位元向量使用n個位元 Q +小的表以指示每一區中之哪些位元為相等的。 此位元聚結具有由此產生的檔案之大小以無損失方式減 小之優點。此優點很可能隨著區之數目增加而增加,因為 更多位元可此被聚結。所以地圖大小隨著區之數目以次: 性方式増加。 人、 在一實施例中,獲得以下資料: 群组之最小數目 群组之孚始i a 何闌,比利時及盧森堡 255個區 12 84 '~ 群组之最大數目 152 - 何蘭,比利時及盧森堡 300個區 13 90.017 150832.doc -77- 201211508 因而’在具有25 5個區之荷蘭,比利時及盧森堡之實例 中’存在至少1個甚至在霍夫曼編碼之前也僅具有12個群 組(亦即,僅需要12個位元來編碼其2 5 5位元之位元向量(亦 即,位元向量之長度與區之數目相同))之區(且因此,在霍 夫曼編碼之後具有甚至更少群組)。 平均而言’對於荷蘭’比利時及盧森堡2 5 5個區,區需 要84個位元。在此實例中,最差的區在霍夫曼編碼之前需 要152個位元(152個群組)。 作為另一實例且以上述255個區的荷蘭,比利時及盧森 堡之實例中的區Id=3為例,其具有自經編碼資料取得的以 下18個群組。 區Id=[3]具有[18]個群組 tx ^ α ) *1 ξ 1 I» *1 ί 2 5When a number of bits are fully correlated (ie, always all 〇 or all U), they can be aggregated into only one location without releasing any information. Will be fully correlated in a given zone. The bit set is called a "group", and the bit vector of a given area is composed of several groups. If the bit vector of the N bit is composed of n groups, the bit vector of the encoded N bit uses n A bit Q + small table to indicate which bits in each region are equal. This bit coalescing has the advantage of reducing the size of the resulting file in a lossless manner. This advantage is likely to follow The number of zones increases and increases because more bits can be agglomerated. Therefore, the map size increases with the number of zones: Sexually. People, in one embodiment, obtain the following information: Minimum number of groups The group's eagle ia He, Belgium and Luxembourg 255 districts 12 84 '~ The largest number of groups 152 - Helan, Belgium and Luxembourg 300 districts 13 90.017 150832.doc -77- 201211508 thus 'has 25 5 In the case of the Netherlands, Belgium and Luxembourg There are at least one even 12 groups before the Huffman coding (that is, only 12 bits are needed to encode the bit vector of 2 5 5 bits (ie, the length of the bit vector is The number of zones is the same)) (and therefore, there are even fewer groups after Huffman coding). On average, for the Netherlands, 2 5 5 districts of Belgium and Luxembourg, the zone needs 84 bits. In this example, the worst zone requires 152 bits (152 groups) before Huffman coding. The zone Id=3 in the example of the Netherlands, Belgium and Luxembourg as another example and with the above 255 zones For example, it has the following 18 groups obtained from encoded data. Area Id=[3] has [18] groups tx ^ α ) *1 ξ 1 I» *1 ί 2 5

( 3 ί 5 7 Β :l 12 13 16 ΐϊ 2C 21 Ζ2 23 24 2h 2i 27 2§ 29 3D •3: 32 33 m 37 3.Β 35 4S 4.2 43 4』45 4* 52 5: 55 62 63 £7 6.9 "?:! 72 73 ·?4, :75 7 6 BS: δ: S2 S] 56 涵 39 5D 35 96'^·? »8 l〇£: 1C1 102 ID3 124 105 :C:€ IQi 11G 112 113 ΙΓ& 120 123" 127 129 13D 133 1/23 136 1« 14.3 LH1«: U9 .13.2 LS: 135 LM 13? 15Ϊ L6C iis :67 ITi 172 173 :17·3 Γ?6 iT? 173 IS: 132 :B1 I3*Q 1¾ 2DG 2Q3 2D5 2C:T 2LD 2:U 212 2L3( 3 ί 5 7 Β :l 12 13 16 ΐϊ 2C 21 Ζ 2 23 24 2h 2i 27 2§ 29 3D •3: 32 33 m 37 3.Β 35 4S 4.2 43 4』45 4* 52 5: 55 62 63 £ 7 6.9 "?:! 72 73 ·?4, :75 7 6 BS: δ: S2 S] 56 culvert 39 5D 35 96'^·· »8 l〇£: 1C1 102 ID3 124 105 :C:€ IQi 11G 112 113 ΙΓ& 120 123" 127 129 13D 133 1/23 136 1« 14.3 LH1«: U9 .13.2 LS: 135 13 LM 13? 15Ϊ L6C iis :67 ITi 172 173 :17·3 Γ?6 iT? 173 IS : 132 :B1 I3*Q 13⁄4 2DG 2Q3 2D5 2C:T 2LD 2:U 212 2L3

^15 218: 219 220 221 222 226 22? 229 235 23T 2^3: 2-12 243 24* MS 24"? 2« 23C 252 J tl i € ;. ♦ 1 ·; 9 *1 I IS:) ♦30 ( 13 U 35 «a 49 5T 68 i5 33 IDS 115 1:7 128 131 :S4 I3g _ i53 151 164 1€B 1'6S 137 IBS 193 2Q9 217 224 23B 233 } ♦ Ξ3 ( 17 ia 53 5« =€. 65 31 S2 99 107 :14 li6 12:1 124 123 :2€ -3" 140 1Λ1 144 24S H6 152 161 1S2 163 17Q 1~?5 13ΰ ι04 -36 191 133 294: 1« igg :93« 20: 202 2Si 2C6 2Ca 216 223 233 2-2B 23i 231 232 233 2.3-4 236 2iC 2:4S 2« 251 ;. ‘ 啻i 4 3*1) *= ί ·ίΙ 7» ~9 ::1 I9T } ♦3 ·: 52 77 gi j tl i 35 ] ♦ 3· ·! 5& 61 9,i ;| tl { €*1 ) *1 { 7C } ♦1 ( 122 ) *1 ·: :53 :, -78 - 150832.doc 201211508 每道路奴表不—群組(區Id=3的18個群組)。括號中之 為在每群組中被聚結之位元索引。#之後之數目為 每一群組中之位元數目。 、在此只例中,1個群組為極大的且含有多達141個區。此 為尋常的。大體而[與地圖之中間的區相比,地圖之邊 緣上的區聚結更多位元。 位元之數目已平均減小為原來的 在此實例中^15 218: 219 220 221 222 226 22? 229 235 23T 2^3: 2-12 243 24* MS 24"? 2« 23C 252 J tl i € ;. ♦ 1 ·; 9 *1 I IS:) ♦ 30 ( 13 U 35 «a 49 5T 68 i5 33 IDS 115 1:7 128 131 :S4 I3g _ i53 151 164 1€B 1'6S 137 IBS 193 2Q9 217 224 23B 233 } ♦ Ξ3 ( 17 ia 53 5« = €. 65 31 S2 99 107 :14 li6 12:1 124 123 :2€ -3" 140 1Λ1 144 24S H6 152 161 1S2 163 17Q 1~?5 13ΰ ι04 -36 191 133 294: 1« igg :93« 20 : 202 2Si 2C6 2Ca 216 223 233 2-2B 23i 231 232 233 2.3-4 236 2iC 2:4S 2« 251 ;. ' 啻i 4 3*1) *= ί ·ίΙ 7» ~9 ::1 I9T } ♦3 ·: 52 77 gi j tl i 35 ] ♦ 3· ·! 5& 61 9,i ;| tl { €*1 ) *1 { 7C } ♦1 ( 122 ) *1 ·: :53 :, - 78 - 150832.doc 201211508 Every road slave is not - group (18 groups with area Id=3). The parentheses are the index of the bits that are coalesced in each group. The number after # is the number of bits in each group. In this example, one group is extremely large and contains up to 141 zones. This is unusual. Generally, [the area on the edge of the map is more than a bit in the middle of the map. The number of bits has been reduced to the average on average. In this example

(255/84)。虽然,其並不意謂地圖大小減小為原來 的^ ’因為要編碼之剩餘位元比原始位元具有更多網(所 、、更難X藉由隹夫曼區塊來編碼)。但位元聚結位元仍可 減小地圖大小(可能顯著地減小地圖大小)。 當聚結每一區中之位元時,每一區中之位元向量因此具 有不同數目個位元(但給定始發區之位元向量具有相同數 目個位元),如圖15中所說明。陰影說明每一位元向量之 始發區ID。 一已。十出表的位元相關性(bitc〇rreiatj〇n),則識別 完全相關位元之群組為相當容易且快速的。在其中找不到 01或10型樣之所有位元對為完全相關的,且可聚結成丨位 元0 為了給出位兀聚結之另一實例,下表給出6個位元向量 (每一位元向量具有15個位元)之實例。此等位元向量尚未 被聚結。 150832.doc -79- 201211508 C - - ΐ» i e、乂二二之二二 cca':ec:::::;:ccrj 此A 1 5位TL之位元向量可聚結成僅4個群組-因此,在霍 夫曼編碼之前每位元向量有4個位元。此展示於下表中: 1 2 3 4 5 6 7 8 1 υυ 11 1 1 0 11 1 0 00 00 1 1 0 11 0 11 00 1 0 1 00 1 11 11 0 0 1 00 0 0 11 00 0 0 1 00 0 00 00 0 1 0 11 Τ' 9 1+3+9 2+11 5+7 4+8+10 1 0 1 1 0 0 1 1 0 「1 0 1 1 1 0 0 0 1 0 0 0 0 1 0 Μ 00 π_ ΤΓ 一 1哦衣之左透邵分中之哪歧位 元構成4位元聚結向量。為了、,主枯1 a _ # ,月边起見,4位元聚結向量 弟一位兀表示左邊部分之證 ^ 弟1攔、第3欄及第9攔。因 由於在上述實例中左邊部分 口而’ 您I刀(亦即,15位元原始向量) 位兀、第3位元及第9位元總 &相同,故其可由上* 側之第一攔表示。 表之右邊 因此,總之, 下: 左邊側與右 邊側之間的一 致性之表為如 _原始位元 聚結位元 0 0 1 1 2 1 3 0 4 0 5 3 6 2 7 1 8 2 9 2 10 3 150832.doc -80. 201211508 原..始位元 聚結扭索 11 0 12 3 13 1 一 14 1 一 聚結位元有效地將附近目的地區及在自始發區的相同角 度扇形(angle sector)中之目的地區分組,如圖16中所說 明。 Ο(255/84). Although, it does not mean that the map size is reduced to the original ^' because the remaining bits to be encoded have more nets than the original bits (which is more difficult to encode by the Huffman block). However, the bit coalescing bit can still reduce the map size (possibly reducing the map size). When the bits in each zone are coalesced, the bit vector in each zone therefore has a different number of bits (but the bit vector of a given origin zone has the same number of bits), as in Figure 15 Explained. The shading indicates the originating area ID of each bit vector. One has. It is quite easy and fast to identify the group of fully related bits by the bit correlation of the ten-out table (bitc〇rreiatj〇n). All bit pairs in which no 01 or 10 type can be found are fully correlated and can be coalesced into 0 bit 0. To give another example of bit 兀 coalescence, the following table gives 6 bit vectors ( Each meta-vector has an instance of 15 bits). These bit vectors have not yet been coalesced. 150832.doc -79- 201211508 C - - ΐ» ie, 乂二二二二cca':ec:::::;:ccrj This A 1 5-bit TL bit vector can be clustered into only 4 groups - Therefore, there are 4 bits per bit vector before Huffman coding. This is shown in the table below: 1 2 3 4 5 6 7 8 1 υυ 11 1 1 0 11 1 0 00 00 1 1 0 11 0 11 00 1 0 1 00 1 11 11 0 0 1 00 0 0 11 00 0 0 1 00 0 00 00 0 1 0 11 Τ' 9 1+3+9 2+11 5+7 4+8+10 1 0 1 1 0 0 1 1 0 ”1 0 1 1 1 0 0 0 1 0 0 0 0 1 0 Μ 00 π_ ΤΓ 1 Which of the left-handed points in the left-handed clothing constitutes a 4-bit coalescence vector. For,, the main dry 1 a _ # , the moon side, the 4-bit coalescence The vector brother 兀 indicates the left part of the certificate ^ brother 1 block, the third column and the ninth block. Because of the left part of the mouth in the above example, 'Y I knife (that is, 15-bit original vector) is located, The third and the ninth total are the same, so they can be represented by the first block on the upper side. Therefore, the right side of the table, in summary, the following: The table of consistency between the left side and the right side is as _ The original bit coalescing bit 0 0 1 1 2 1 3 0 4 0 5 3 6 2 7 1 8 2 9 2 10 3 150832.doc -80. 201211508 The original position of the initial bite guilloche 11 0 12 3 13 1 - 14 1 A coalescing element effectively fanned the nearby destination area and the same angle from the originating area (an The group of destinations in the gle sector is grouped as shown in Figure 16.

圖16中之陰影指示被聚結在一起之區之群組。2個圖(亦 即’圖16a及圖16b)展示自2個不同始發區:a及B之觀點聚 結的相同區。哪些區被聚結在一起取決於始發節點之區 ID,如由該圖所展示。在此圖中,8個區被聚結成4個群 ,、且自此等圖中之始發區A或始發區B之觀點聚結位元 不同/主忍垂直條狀區(1300)如何被聚結的,因為當自始 發區A觀看時,其處於同一方向上。 口 目 中 圖17中進—步舉例說明此,圖17說明聚結位元將附 的地區及自每一始發區的觀點而言的在+/-相同角度扇 的目的地區分組。 朽又扇 數=位Γ後,每—區之位元向量之要編碼之位元的 下,每例如)荷蘭’比利時及慮森堡255個區的狀況 下母g之位元向量之位元數目為: 始發區-> 聚結之位元 1 -> 57 2 -> 93 3 -> 18 4 -> 22 5 -> 63 6 -> 75 二··剪斷... 251 -> 21 252 -> 46 253 ->117 254 -> 8〇 150832.doc -81 - 201211508 χ方法為準確的(其並非試誤式的)。因此,其找到位元 之群組之理想數目。 在一些實施例中,以無損失方式實施聚結位元:僅當區 總是具有㈣位元時才聚結該料。但在其他實施例中, 此可延伸至使得聚結位元有損失,·亦即,使得完全恢復原 始資料為不可能的。此等有損失實施例可引人臨限值··若 :對位元之差異小於χ倍,則在位元向量中之一些位元向 量中用1替換-或多個〇允許彼等位元向量被聚結的情況 下’可聚結該等位元。 又 貝失聚結之—實例將為使〇〇〇〇〇〇 1100與〇〇〇〇〇〇 i i 〇 聚π & 法之—優點為’資料被更好 為,使用該等位元向量之師選擇方m 點 略住迤擇方法將評估其他道路 段’因為額外m將指示—道路段為最快速路線之部分。 在無損失聚結之狀況下,⑮限值為0。增加該臨限值將 旦:聚結其他區’而代價是將少數幾個位Μ引入位元向 但㈣限值被保持為低的,則其將對可使用該資料 :式執備選擇之速度幾乎沒有影響。舉例而言,若在 位一兀向里中2個位7^幾乎總是相同(除了(例如)僅1個 位兀向ϊ之外),則變更此唯— 有可能聚結更多位元可能為可接向!之不同處以使得 期愈多地圖壓縮。 限值愈高,可預 位元重新排序 則 在一些實施例中,一旦位 可將位元重新排序。將位 元已被聚結(如 元重新排序並 上文所描述), 不(在霍夫曼編 150832.doc •82、 201211508 而是有助於使得霍夫 ’且亦可有助於減小 ,從而減小霍夫曼樹 碼之前)減少要編碼之位元之數目, 曼編碼更有效率,從而減小地圖大,j, 位元向量霍夫曼碼中之相異碼之數目 之記憶體要求。 與位元聚結不同,u π w 个』以几置列併斤為試誤式方法, 可找到一種好的重新排序,但其 八 序。 j找到取佳的重新排The shading in Figure 16 indicates the group of zones that are clustered together. The two maps (i.e., 'Fig. 16a and Fig. 16b) show the same area clustered from the perspective of two different origin regions: a and B. Which zones are clustered together depends on the zone ID of the originating node, as shown by the figure. In this figure, the eight zones are agglomerated into four clusters, and from the viewpoints of the originating zone A or the originating zone B in the figures, the coalescing bins are different / the main forbearing vertical strip zone (1300) It is agglomerated because it is in the same direction when viewed from the originating area A. In the mouthpiece, an example is illustrated in Fig. 17, which illustrates that the coalesced cells will be grouped in the area to which they are attached and from the point of view of each of the originating areas. The number of dead and the number of fans = the position of the bit vector to be coded in each bit area, for example, the bit of the bit vector of the parent g in the condition of 255 regions of the Netherlands 'Belgium and the Fitzgerald The number is: origination area-> coalesced bit 1 -> 57 2 -> 93 3 -> 18 4 -> 22 5 -> 63 6 -> 75 II··cut. .. 251 -> 21 252 -> 46 253 ->117 254 -> 8〇150832.doc -81 - 201211508 The method is accurate (it is not trial and error). Therefore, it finds the ideal number of groups of bits. In some embodiments, the coalesced bits are implemented in a lossless manner: the material is only coalesced when the region always has (four) bits. In other embodiments, however, this can be extended to cause loss of coalescence bits, i.e., such that complete restoration of the original material is not possible. Such lossy embodiments may introduce a threshold. If the difference between the bits is less than χ, then some of the bit vectors in the bit vector are replaced with 1 - or more than 〇 to allow their bits In the case where the vector is coalesced, it can be coalesced. And the case of agglomeration - the example will be to make 〇〇〇〇〇〇 1100 and 〇〇〇〇〇〇 〇 〇 π amp — 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点 优点The teacher selects the m point and the method of selection will evaluate the other road segments 'because the extra m will indicate that the road segment is part of the fastest route. In the case of no loss coalescence, the 15 limit is zero. Increasing the threshold will: agglomerate other zones' and the cost is to introduce a few bits into the bit direction but the (4) limit is kept low, then it will use the data: Speed has almost no effect. For example, if the two bits in the inward direction are almost always the same (except for (for example, only 1 bit), then this is only possible - it is possible to coalesce more bits. May be accessible! The difference is to make the map more compressed. The higher the limit, the pre-bit reordering. In some embodiments, once the bit can reorder the bits. The bits have been coalesced (such as meta-reordering and described above), not (in Hoffman, ed., 150832.doc • 82, 201211508 but helps to make Hoff' and can also help to reduce To reduce the number of bits to be encoded before the Huffman tree code is reduced, the MAN coding is more efficient, thereby reducing the memory of the number of dissimilar codes in the large, j, bit vector Huffman codes of the map vector. Body requirements. Different from the bit coalescence, u π w 』 is a few trials and columns, and a good reordering can be found, but its eight order. j find a good re-arrangement

按區塊編碼位元向量。區塊A小為可定製的,且餘存於 地圖標頭800中。在下文給出之解釋中,且作為一實例: 將區塊大小設定為"個位元。位元向量,之位元之數目可 能不可被11除盡,所以最後的區塊可能小於U個位元。最 後的區塊使用與具有i i個位元之完整區塊所使用的霍夫曼 樹不同的霍夫曼樹。編碼每一位元向量因此編碼: •使用針對11位元區塊(在此實例中)之霍夫曼瑪之若干 完整區塊 •當剩餘的位元小於11個時可使用另—霍夫曼碼之最後 1個區塊。 以下圖片描繪要按區塊進行霍夫曼編碼之位元,其中位 元向量在2個區(其在聚結之後具有不同數目個位元)中: 150832.doc -83- 201211508 完整的區塊 -> < — 完整的區塊 <-最後的區塊 ,...1------------------4· .! x x x x x x x x S .i X X X X X X X X I -:- +---------------+ .I x >: χ χ χ χ χ χ I • lx XXX X >: X M j .I χ χ x 丨 ----完整的區塊 -> <--- 完整的區塊 -> < 完整的區塊--- 每一區皆具有霍夫曼樹將很可能在記憶體方面成本過於 高昂。所以在一些實施例中,所有區共用同一霍夫曼樹。 由於在每一區中相關位元為不同的,故將每一區中之位元 重新排序以使得在所有區中相關位元被系統地置放於相同 位置處是有利可圖的。所以跨越所有區共用霍夫曼樹變得 更有效率。 將用來將每一區之位元重新排序之表儲存於地圖資料 中。注意,無需編碼單獨的用以使位元聚結之表及用以將 位元重新排序之表,而是可改為僅編碼1個表,其為兩種 轉換(聚結+重新排序)之合成物(composition)。 將完整區塊中之位元重新排序之方法按如下方式進行: 對於每一區,找出最相關的位元對。由於完全相關之位元 已被聚結,故剩餘位元皆為不完全相關的。然而,一些位 元對比其他位元對相關得多。在第一完整區塊中,將最相 關之位元對(a, b)重新映射至位元#0及# 1 : 150832.doc -84- 201211508 |a b........ . j . ..........I...........!x x xl 由於分組最相關之位元對,故完整區塊之霍夫曼樹具有 較少相異碼(此具有使用較少記憶體來儲存資料之優點), 且統計資料為更偏斜的(使得霍夫曼編碼更有效率)。在絕 '大多數狀況下,前2個位元(例如)含有00或11,但幾乎從來 • 不含有10或〇1(其他位元亦是如此),而非含有位元之隨機 序列。在未將位元重新排序的情況下,前2個位元將含有 各種各樣的型樣00、01、10、11。 〇 在將前2個位元重新映射之後,方法接著找到下一最相 關的(c, d)位元對,且重新映射其以將其儲存於第二區塊 之前2個位元中: la b........ .led.........I...........1 x x x ί +菜柴;箱絮结梁媒篇'^篇ΐ^篇絮篇媒;样.裳雄+雄欺塔媒解堪媒料样;-黑:媒媒;篇德篇箱箱媒+篇媒紫媒媒篇箱篇篇撰;sigeais;^截箱傅媒篇级薄+ ----1_ 接著,方法再一次找到下一最相關的(e,f)位元對,且重 新映射其以將其儲存於第三區塊之前2個位元中: + «Χ:3Σ82:·2ε4ΕΕϊ5:Κ;ε=ΙΚί;2Ε83 3:85»55:ί!£;Κ:3=£5;·ε»2!ί;Κ: +3=·2ε=2:ίΒΕ5ίϊ;»:«:δ=::=ε32;3Κ2Κ8Κ·β:;=:ΪΒ:5«»··«5ΪΤ3Κ + Χ2:8είΚ:ΚΪ:5Ζ:ΙΪ:ί38:ε:·3Β·55;:3!ϊ3Εϊε·«5 3Κ·Μ:;ί:2Χί»:Κ«Κ-|-------}- iab,........I c d..........!e f.........lx x xi 當到達最後的完整區塊時,該方法返回至第一個完整區 - 塊且重新映射下一最相關的位元對(g,h)。若若干對具有 相同相關性,則連結斷路器(tie breaker)選擇與同一區塊中 之前一對最相關的對(亦即,與(a, b)最相關的對)··The bit vector is encoded by block. Block A is small customizable and remains in the icon head 800. In the explanation given below, and as an example: Set the block size to " one bit. The bit vector, the number of bits may not be divisible by 11, so the last block may be smaller than U bits. The last block uses a different Huffman tree than the Huffman tree used for the complete block with i i bits. Encoding each bit vector is thus encoded: • Uses several complete blocks of Huffman for 11-bit blocks (in this example) • Uses another Huffman when the remaining bits are less than 11 The last block of the code. The following picture depicts the bits to be Huffman-encoded by block, where the bit vector is in 2 regions (which have a different number of bits after coalescing): 150832.doc -83- 201211508 Complete block ->< — Complete block <-last block,...1------------------4· .! xxxxxxxx S .i XXXXXXXXI - :- +---------------+ .I x >: χ χ χ χ χ χ I • lx XXX X >: XM j .I χ χ x 丨--- - Complete block-><--- Complete block->< Complete block--- Each zone has a Hoffman tree that will most likely be too costly in terms of memory. So in some embodiments, all zones share the same Huffman tree. Since the associated bits are different in each zone, it is advantageous to reorder the bits in each zone so that the associated bits are systematically placed at the same location in all zones. So sharing Huffman trees across all zones becomes more efficient. A table that will be used to reorder the bits of each zone is stored in the map material. Note that instead of encoding a separate table for agglomerating bits and a table to reorder the bits, instead of encoding only one table, it is two conversions (aggregation + reordering). Composition. The method of reordering the bits in the complete block is as follows: For each zone, find the most relevant pair of bits. Since the fully correlated bits have been coalesced, the remaining bits are not fully correlated. However, some bits are much more relevant than other bit pairs. In the first complete block, the most relevant bit pair (a, b) is remapped to bits #0 and #1 : 150832.doc -84- 201211508 | a b........ j . ..........I...........!xx xl The Huffman tree of the complete block is less different due to the most relevant bit pairs of the grouping Code (this has the advantage of using less memory to store data), and the statistics are more skewed (making Huffman coding more efficient). In most cases, the first 2 bits (for example) contain 00 or 11, but almost never • do not contain 10 or 〇 1 (as do other bits), rather than containing a random sequence of bits. In the case where the bits are not reordered, the first 2 bits will contain a variety of patterns 00, 01, 10, 11. After remapping the first 2 bits, the method then finds the next most relevant (c, d) bit pair and remaps it to store it in the 2 bits before the second block: la B........ .led.........I...........1 xxx ί +菜柴;箱絮结梁媒篇'^篇ΐ^ The article is written by the media; the sample. Chang Xiong + male bully tower media solution can be found in the media; - black: media; article German articles box media + article media purple media box articles articles; sigeais; ^ intercept box Fu Media-level thin + ----1_ Next, the method finds the next most relevant (e,f) bit pair again and remaps it to store it in the first two bits of the third block: + «Χ:3Σ82:·2ε4ΕΕϊ5:Κ;ε=ΙΚί;2Ε83 3:85»55:ί!£;Κ:3=£5;·ε»2!ί;Κ: +3=·2ε=2: :ΒΕ5ίϊ;»:«:δ=::=ε32;3Κ2Κ8Κ·β:;=:ΪΒ:5«»··«5ΪΤ3Κ + Χ2:8είΚ:ΚΪ:5Ζ:ΙΪ:ί38:ε:·3Β·55;: 3!ϊ3Εϊε·«5 3Κ·Μ:; ί:2Χί»:Κ«Κ-|-------}- iab,........I c d....... ...!e f.........lx x xi This method returns when the last complete block is reached The first full area - remapped block and the next most relevant bit pair (g, h). If several pairs have the same correlation, the tie breaker selects the pair that is most relevant to the previous pair in the same block (i.e., the pair most relevant to (a, b)).

演算法方法如上述繼續進行直至完整區塊中之所有位元 150832.doc -85- 201211508 對已被重新映射: + =:=;;:=二二 5=£Ϊ;2Ϊ·= 1=::=5 = 2=: :&=::=:=:;:=;:=:二.== +=工;Si 1S: 泣二S:+ 二;=;=2:二公5^二==二 35;二 2=;二:^二工工=二-j-------1- ]a to g h m n s fc y z . j c d i j o p u v A B . j e f k 1 q r w x C D * i x x κ | 在此實例中,由於區塊大小具有奇數個位元(11個位 元),故每一完整區塊中仍存在未經重新映射之位元。該 方法接著找到與「z」最相關之位元,且將其儲存於第一 區塊中。接著找到與B最相關之位元且將其儲存於第二區 塊中,等等,直至所有完整區塊皆被重新映射: vw .jg. ―~ 议 an -ϋΆ 篇攻龄软 mt 这媒供 sst +这 + :共 iis sss.篇:吳 as ijjisa-sasiKiasssi.sisiaiSiKsss «ί;»·.ϊ!ϋ+ ^ ^ istr off fy.· ag, sst tas asa. .¾¾ g» aa ss.;2;..;is.is;.SBiitsiai:iii. 二-J- — — — —--j- iabgh.mnstyzE;cdijopuvABF|efklqrwxCDG!xxx| 此時,完整區塊中之所有位元被重新映射。該方法接著 重新映射最後的區塊中之位元,試圖分組最相關之位元對 (如針對完整區塊所進行)將最後的區塊中之位元重新排序 可有助於減小地圖大小,但其並不像將完整區塊中之位元 重新排序一樣有幫助,此係由於2個原因: •完整區塊為更重要的。在此實例中,每一碼對於完整 區塊使用3個霍夫曼碼,而其對於最後的區塊僅使用1 個霍夫曼碼,所以完整區塊比最後的不完全的最後區 塊對總地圖大小的貢獻更大為正常的,且最佳化完整 區塊之霍夫曼編碼為更有用的。 •由於已挑選完整區塊中之所有最相關的位元來重新映 射其,故最後區塊中剩下的待重新映射之位元為較不 相關的。所以最後區塊中之位元之熵因此高於完整區 塊中之位元之熵。換言之,最後區塊之霍夫曼編碼不 150832.doc *86· 201211508 如完整區塊之霍夫曼編碼有效率。The algorithmic approach continues as described above until all bits in the complete block 150832.doc -85- 201211508 have been remapped: + =:=;;:=2 2 5=£Ϊ; 2Ϊ·= 1=: :=5 = 2=: :&=::=:=:;:=;:=: two.== +=work; Si 1S: weeping two S: + two; =;=2: two male 5 ^二==二35;二2=;二:^二工工=二-j-------1-]a to ghmns fc yz . jcdijopuv AB . jefk 1 qrwx CD * ixx κ | In the example, since the block size has an odd number of bits (11 bits), there are still unmapped bits in each complete block. The method then finds the bit most relevant to "z" and stores it in the first block. Then find the bit most relevant to B and store it in the second block, and so on, until all the complete blocks are remapped: vw .jg. ―~ 议 an anϋΆ 攻 攻 软 这For sst + this + : a total of iis sss. articles: Wu as ijjisa-sasiKiasssi.sisiaiSiKsss « ί;»·.ϊ!ϋ+ ^ ^ istr off fy.· ag, sst tas asa. .3⁄43⁄4 g» aa ss.; 2;..;is.is;.SBiitsiai:iii. II-J-——————————j- iabgh.mnstyzE;cdijopuvABF|efklqrwxCDG!xxx| At this point, all the bits in the complete block are remapped . The method then remaps the bits in the last block, attempting to group the most relevant bit pairs (as done for the full block) reordering the bits in the last block can help reduce the map size However, it is not as helpful as reordering the bits in the complete block for two reasons: • The full block is more important. In this example, each code uses 3 Huffman codes for the complete block, and it uses only 1 Huffman code for the last block, so the complete block is the last incomplete last block pair. The contribution of the total map size is greater as normal, and it is more useful to optimize the Huffman coding of the complete block. • Since all the most relevant bits in the complete block have been picked to remap them, the remaining bits to be remapped in the last block are less relevant. Therefore, the entropy of the bit in the last block is therefore higher than the entropy of the bit in the complete block. In other words, the Huffman coding of the last block is not 150832.doc *86· 201211508. Huffman coding such as full block is efficient.

labghmn s tiyzEj cdi j opuv A BP|e flcl q rwxC DG 丨Η I +傑贫禅遠媒;销篇梁益黑a%篇篇篇森.+篇媒篇祭;》箱篇SK媒:黑雜篇篇箱傑媒溪榮與+某篇菜:媒媒.媒.雜.媒箱销篇箱黑;^软篇篇.親篇雄+_ — 應記住,對於所有區之所有完整區塊使用同一霍夫曼 .樹。在上述貫例中編碼位元向Ϊ因此以相同霍夫曼碼編碼 • 所有完整區塊,且最後以不同霍夫曼碼編碼最後的區塊:Labghmn s tiyzEj cdi j opuv A BP|e flcl q rwxC DG 丨Η I + Jie poor Zen far media; sales articles Liang Yi black a% articles articles. + articles media articles; "box articles SK media: black miscellaneous Chapters Jiejie Xirong and + a piece of food: media. Media. Miscellaneous. The box is sold in black; ^ soft articles. Parents +_ - should remember, for all the complete blocks of all districts Use the same Hoffman tree. In the above example, the coded bits are thus encoded with the same Huffman code. • All complete blocks, and finally the last block is encoded with a different Huffman code:

(使用相同霍夫曼碼之3個完整區塊) (使用另一霍夫曼瑪之最後1個區塊) 當看到上述圖時,該方法重新映射每一區塊之第一位元 (而非在跳至第二區塊之前重新映射第一區塊中之所有位 元)的原因應更清楚。由於針對所有完整區塊使用相同 碼,故需要使所有區塊之所有碼儘可能相同。若重新映射 第一區塊中之所有位元,接著重新映射第二區塊中之所有 位元(等等),則每一區塊將具有十分不同之型樣:第一區 塊將具有最相關之位元,第二區塊將具有較不相關之位 元,第三區塊將具有更不相關之位元,等等。將有可能針 對完整區塊之每一行產生若干霍夫曼碼,但據信彼做法在 記憶體方面成本過於高昂。目前為止所概述之方法在使所 有完整區塊共用同一霍夫曼碼的同時運作良好。 可能的其他最佳化 頁之頁 150832.doc -87- 201211508 :兀向量頁貧訊儲存一差異欄位,其用以找到每一位元 向量頁之開始偏移°使用偏移之道路線性内插器(r〇ad near mterpolat〇r)來儲存差異榀]位。但該等偏 道路㈣=,因為小節點ID(等級〇,高速公路)㈣2 凡向$比局節點ID(等級5,目的地道路)周圍的位元向量 需要更多位元。 位,向s頁資訊之編碼不像可能期望地—樣有利,因為 内插器不能精確地預測實際偏移。藉由改良内插器,將有 可能改良位元向量頁資訊表之編碼以使其更有效率。 本發明之-些實施例可使用具有2個等級而非僅具有㈣ 等級之位元向量頁(及可能地,區頁)。可將用以分組資料 之具有2、節點之頁(稱其為子頁)分組成具有2,固子頁之 頁。 因而’將按頁而非全域地(於標頭中)儲存線性内插參 數。舉例而言’索引等級2可能早先將24=16個節點分組於 子頁中且索引1可能將210=1023個彼等子頁分組於頁 中。接著針對1〇24xl6 = 16K個節點而非對全部節,點計數(在 western_and—Central_Eur〇pe(西歐及中歐)的地圖中之 4〇,刪,_個節點)發生線性内插,所以對可變大小偏移之 線性内插變得精確得多且索引2中之差異攔位因此較小。 在頁為大的情況下,額外索引1之大小為小的(小到足以 裝入記憶體中)。能夠裝入裝置之記憶體内為有利的,因 為其不應減緩使用該資料之路徑選擇。可接著針對索引i 表中之每—輸入項儲存平均頁大小,而非將平均頁大小儲 150832.doc •88· 201211508 存於標頭中。 具有2ΛΝ個子頁 之索引1頁(using 3 complete blocks of the same Huffman code) (using the last block of another Huffman) When seeing the above figure, the method remaps the first bit of each block ( Instead of remapping all the bits in the first block before jumping to the second block, the reason should be clearer. Since the same code is used for all complete blocks, it is necessary to make all the codes of all blocks as identical as possible. If you remap all the bits in the first block and then remap all the bits in the second block (and so on), each block will have a very different pattern: the first block will have the most The associated bit, the second block will have less relevant bits, the third block will have more irrelevant bits, and so on. It will be possible to generate a number of Huffman codes for each of the complete blocks, but it is believed that the cost of memory is too high. The method outlined so far works well while having all of the complete blocks share the same Huffman code. Possible Other Optimization Pages 150832.doc -87- 201211508 : 兀 Vector Pages Save a Difference Field, which is used to find the starting offset of each bit vector page. Insert (r〇ad near mterpolat〇r) to store the difference 榀] bit. However, the partial roads (4) =, because the small node ID (level 〇, highway) (4) 2 requires more bits to the bit vector around the $ node ID (level 5, destination road). Bit, encoding of the s page information is not as advantageous as may be desirable because the interpolator cannot accurately predict the actual offset. By modifying the interpolator, it will be possible to improve the encoding of the bit vector page information table to make it more efficient. Some embodiments of the present invention may use a bit vector page (and possibly a zone page) having 2 levels instead of only (4) levels. A page having 2 nodes (called a sub-page) for grouping data can be grouped into pages having 2, solid pages. Thus 'linear interpolation parameters will be stored page by page rather than globally (in the header). For example, 'index level 2 may have previously grouped 24 = 16 nodes into sub-pages and index 1 may group 210 = 1023 sub-pages into pages. Then for 1〇24xl6 = 16K nodes instead of all the nodes, the point count (4〇, delete, _ nodes in the map of western_and-Central_Eur〇pe (Western and Central Europe)) is linearly interpolated, so The linear interpolation of the variable size offset becomes much more accurate and the difference block in index 2 is therefore smaller. In the case where the page is large, the size of the extra index 1 is small (small enough to fit into the memory). It is advantageous to be able to fit into the memory of the device as it should not slow down the path selection using the data. Instead of storing the average page size for the per-input in the index i table, instead of storing the average page size, 150832.doc •88· 201211508 is stored in the header. 1 page with 2 subpages

具有2Λιι個節點 之索引2子頁Index 2 subpage with 2Λιι nodes

I頁0 I +----------+I page 0 I +----------+

丨頁1 I +------ + i 12 1 +-------十 >+-----—--- | 2Λη個始發 節點之可變 丨大小資料 +---------- Ο + I 頁 256丨页1 I +------ + i 12 1 +-------10>+--------- | 2Λη starting node variable size information +- --------- Ο + I Page 256

+ i 頁257 I+ i page 257 I

交錯位元向量頁 道路二非:偏移之内插器為不精確的,因為重要Interleaved Bit Vector Page Road 2 Non: Offset Interpolator is inaccurate because important

標)及次要道路(許多平凡旗標)之位元 向里為不同的。使内插器更線性之—個簡單方式為使不同 網路4級之頁交錯,且此可在本發明之實施财使用。 以上實施例中所描述之檔案儲存以下頁·· #0 #2 #2 #3 #4 #n-3 #n-2 #n-l 有可能以交錯之方式儲 在可能更有效之其他實施例申 150832.doc -89- 201211508 存如下: #0 #π-ι #1 #η-2 #2 IFH —3 #3 fn-4 為了存取頁#X(例如由路線規劃應用程式),藉由載入頁 #χ'而存取該頁,其中: • Χ' = 2χχ(其中X為偶數) • X'=2x(x-(n-l))(其中 χ為奇數) 此實施例應為有利的,因為其將使索引之大小每頁減小 右干位7L。然而,資料可能對於快取而言分組地較差,此The standard and secondary roads (many ordinary flags) are different inward. A simple way to make the interpolator more linear is to interleave pages of different network level 4, and this can be used in the implementation of the present invention. The files described in the above embodiments store the following pages. #0 #2 #2 #3 #4 #n-3 #n-2 #nl It is possible to store in an interlaced manner in other embodiments that may be more effective. .doc -89- 201211508 Save as follows: #0 #π-ι #1 #η-2 #2 IFH —3 #3 fn-4 To access page #X (for example by route planning application), by loading Page #χ' accesses the page, where: • Χ' = 2χχ (where X is an even number) • X'=2x(x-(nl)) (where χ is an odd number) This embodiment should be advantageous because It will reduce the size of the index by 7L per page. However, the data may be poorly grouped for the cache, this

可能減緩資料存取(在檔案系統快取記憶體卡較少命中)。 不儲存所有節點之區ID 不需要儲存無出口的路處之節點及具有2個所附接道路 段之節點之區ID。對於路徑選擇而言,可忽略此等節點。 進入此等節點中之一者可被轉換成進入其鄰居決策節點。 在頁等級處及/或節點等級處儲存額外資訊 查看地圖資料,存在許多僅含有平凡位元向量刪〇( 或11 ··· 11 1之位TL向S頁。—些實施例可能針對每一頁, 存1位元以標記彼等頁’則儲存彼等頁中之位元向量可; 更有效率的,因為對於每— ’ 一甘& Λ 位兀向罝僅需要單一位元來才 不其為〇〇〇...〇〇〇或是i n. lu。 其不僅將減小僅含有平/ 位兀向罝之頁之大小,而且1 /、丌將使具有非平凡位元 150832.doc •90- 201211508 之頁的位元向量碼的霍夫曼樹得到更好的最佳化(因為彼 等碼之頻率將在百分比方面顯著增加,所以用來指示非平 凡向量之位元數目將減小)。在較精細網路等級(例如,等 級3)中,大多數頁僅含有平凡位元向量,所以在該等頁的 約一半頁中可能每頁僅存在1個位元向量。 僅儲存決策節點處之位元向量 Ο Ο 如上文所論述,-些實施例可能不儲存具有⑷個所附 接道路段的節點之位元向量。然而,其他實施例可為更積 ㈣4將該想法推廣為僅儲存決策節點周圍之位元向 w 〇 圖節點及決策道路段之概念,因為其可在編碼地 元θ θ、私中為有利的:不需要編碼非決策道路段之位 70向置,如現在所論述。 二:卽:為一節點,其中存在用於路徑選擇之進入道 個選又擇存在離開該節點(而不進行U形轉弯)之多 非決策節點是並非決策節點之節點。 味— 擇來自哪裡,總是僅存在 $ s路⑽ •決笛、音财, 怿離開该節點之道路。 、、殳為用以離開決策節點之人法的、曾敗# •非決策道路段是#非、 五… 口法的遏路奴。 所有決策道=並非決展道路段之道路段。 k路心因此在決策節 點周圍的所有道路段皆為 ^ °但並非在決策節 的所有道路段為非決策道路段Γ #又。在非決策節點周圍 :僅、扁碼決策道路 e 位兀向置。非決策道路段之位元 150832.doc 201211508 向量為隱含的(〇〇〇... 〇〇〇或111...111),因為使用該資料之 路徑選擇技術可根據已存在於道路段中之資訊而作出確 定。 如何確定一節點是否為決策節點?可將準則縮減為: isDecisionNode = (lineCount >= 3) && (lineGoingOutCount >= 2) 其中: lineCount:為附接至節點之線路之總數 忽略不可進行路徑選擇之線路類型(鐵路、參考線路), 忽略在兩個方向上封閉之線路且忽略禁止通行之道路(住宅區域)。 lineGoingOutCount:為附接至節點的可合法選取以用於離開該節點的線路之數目。 選取一道路段以離開該節點是否為合法的視道路段屬性 而定: •道路段類型(鐵路及參考道路段始終為非法的) •道路之前向/後向流動(儲存於道路段旗標中) •道路段旗標中之禁止通行屬性(禁止通行道路段不具 有任何位元向量) 在一些實施例中,忽略非決策道路段可丟棄約略40%的 道路段。已發現,此百分比為相當一致的而與地圖無關。 避免編碼40%的位元向量為有利的,但其節省了小於40% 的地圖大小,因為其主要移除平凡位元向量。 移除在具有小於3個所附接道路段之節點(虛設節點)周 圍的位元向量會移除非平凡位元向量,所以針對此類別的 非決策道路段的地圖大小節省可比針對非決策道路段之地 圖大小節省大。另一方面,篩選需要解碼器(諸如,使用 地圖之路徑選擇方法)來解碼道路段之道路段類型及道路 150832.doc -92- 201211508 旗&且對其應用邏輯以便弄清為隱含的位元向量,此可 減緩過程。 〇 ’實把例亦可查看運動(亦即,轉彎限制)來決定 、間的道路段是否為合法的,但此技術添加複雜性。忽略 、動思明實施例可能編碼比嚴格必需之位元向量多的位元 向量’但達成了方法之簡化。 非決策節點之實例 匕實例中,(b)附接至可在兩個方向上通行之2個道路 奴。(b)不為決策點,因為存在<=2個所附接道路段。 所以將不編碼離開節點(b)之兩個道路段的位元向量。 解碼器可隱含地將其設定成丨丨丨丨丨工。 a—>—b— 此實例中之箭頭 > 展示合法的流動方向。(b)不為決策 點,因為僅存在一個出口。所以0)周圍的所有道路片段皆 不需要位元向量。 不編碼離開節點(b)之道路段(b)_>(c)之位元向量,其將 隱含地為11 。也不編碼離開(b)之非法道路段之位元 向里’其將隱.含地為〇〇〇..〇〇〇。 決策節點之實例 a—<->—b__<_>__c 150832.doc -93- 201211508 (b)為決策節,點,因為當來自 選擇可朝u & (d)時,存在一選擇:路徑 伴』朝向(a)或朝向繼續。 注意’在此實例中,當夾 僅可朝勾盼,沒有選擇:路徑選擇 ^朝向(c)繼續。作節點$ 來白M、R主 卽⑻仍為決策節·點,因為存在當 來自(d)時的至少一個選擇, 決i H 應儲存節點(b)周圍的2個 决朿道路段之位元向量。 其::::::)™ 段(b) 一 不儲存道路段(b) _>(d)之 ,^ 位疋向置’因為根據交通之後 向/刖向流動,選取此道路 〇〇〇...〇〇〇〇 “ 對位元向量取邏輯或 假設節點具有3個所附接道路p ^ 安遑路丨又,且前2個經解碼之道路 段具有以下位元向量: OOOQQOOQQQOOOQOOQqqqMay slow down data access (less hits in the file system cache memory card). The zone ID of all nodes is not stored. It is not necessary to store the node of the road without exit and the zone ID of the node with 2 attached road segments. For path selection, these nodes can be ignored. One of these nodes can be converted into entering its neighbor decision node. Store additional information at the page level and/or node level to view the map data. There are many TLs that are only included in the ordinary bit vector (or 11···11 1 to the S page. - Some embodiments may be for each Page, save 1 bit to mark their pages' to store the bit vector in their pages; more efficient, because for each - '一甘 & Λ 兀 兀 才 only need a single bit It is not 〇〇〇...〇〇〇 or i n. lu. It will not only reduce the size of the page containing only the flat/bit, but also the non-trivial bit 150832 .doc • The Huffman tree of the bit vector code on page 90-201211508 is better optimized (because the frequency of these codes will increase significantly in percentage, so the number of bits used to indicate nontrivial vectors Will be reduced.) In finer network levels (eg, level 3), most pages contain only trivial bit vectors, so there may be only 1 bit vector per page in about half of the pages. Store only the bit vector at the decision node Ο Ο As discussed above, some embodiments may not A bit vector of a node having (4) attached road segments is stored. However, other embodiments may promote the idea to store only the concept of a bit map to a w map node and a decision road segment around the decision node. Because it can be advantageous in coding the land θ θ, private: there is no need to encode the position 70 of the non-decision road segment, as discussed now. Two: 卽: is a node, where there is an entry for path selection The choice of the non-decision node that leaves the node (without making a U-turn) is not the node of the decision node. Taste - where is the choice, there is always only $ s road (10) • whistle, money,怿The road that leaves the node. 殳, 殳 is the method used to leave the decision-making node, Zeng defeat # • The non-decision road segment is #非,五... The way to stop the slave. All decision roads = not the road to decision The road segment of the segment. Therefore, all road segments around the decision node are ^ ° but not all road segments in the decision section are non-decision road segments 又 #又. Around the non-decision node: only, flat code decision Road e position The position of the non-decision road segment is 150832.doc 201211508 The vector is implied (〇〇〇... 〇〇〇 or 111...111) because the path selection technique using the data can be based on the existing road Determine the information in the segment. How to determine if a node is a decision node? Reduce the criterion to: isDecisionNode = (lineCount >= 3) && (lineGoingOutCount >= 2) where: lineCount: is attached The total number of lines to the node ignores the type of line (railway, reference line) where path selection is not possible, ignoring lines that are closed in both directions and ignoring prohibited roads (residential areas). lineGoingOutCount: The number of lines that are legally selected to be attached to a node for leaving the node. Select a road segment to leave the node as a legal sight segment attribute: • Road segment type (railway and reference road segments are always illegal) • Road forward/backward flow (stored in road segment flag) • Prohibited Passage Attributes in Road Segment Flags (Prohibited Passage Road Segments Do Not Have Any Bit Vectors) In some embodiments, ignoring non-decision road segments may discard approximately 40% of the road segments. It has been found that this percentage is fairly consistent and not related to the map. It is advantageous to avoid encoding a 40% bit vector, but it saves less than 40% of the map size because it primarily removes the trivial bit vector. Removing a bit vector around a node (dummy node) with less than 3 attached road segments removes the non-trivial bit vector, so the map size savings for non-decision road segments of this category are comparable to for non-decision road segments The map size is large. On the other hand, the screening requires a decoder (such as using the path selection method of the map) to decode the road segment type of the road segment and the road 150832.doc -92- 201211508 flag & and apply logic to it to clarify the implied Bit vector, which slows down the process. 〇 ‘ Real examples can also look at the movement (ie, the turn limit) to determine whether the road segment is legal, but this technique adds complexity. It is neglected that the embodiment may encode a more bit vector than the strictly necessary bit vector' but achieves a simplification of the method. Examples of non-decision nodes 匕 In the example, (b) is attached to 2 road slaves that can pass in both directions. (b) Not a decision point because there are <= 2 attached road segments. Therefore, the bit vector of the two road segments leaving node (b) will not be encoded. The decoder can implicitly set it to completion. A—>—b—The arrow > in this example shows the legal flow direction. (b) Not a decision point because there is only one exit. So 0) all road segments around do not need a bit vector. The bit vector of the road segment (b)_>(c) leaving node (b) is not encoded, which will be implicitly 11 . Nor does it encode the position of the illegal road segment that leaves (b). It will be hidden. The ground is 〇〇〇..〇〇〇. Example of decision node a—<->-b__<_>__c 150832.doc -93- 201211508 (b) For the decision section, point, because when there is a choice from u & (d), there is a choice : The path partner continues toward (a) or toward. Note that in this example, when the clip can only be looked up, there is no choice: path selection ^ heading (c) to continue. Make node $ to white M, R main 卽 (8) is still the decision point · point, because there is at least one choice from (d), it should store the position of the two road segments around node (b) Meta vector. Its::::::)TM segment (b) does not store the road segment (b) _> (d), ^ is located at the direction 'because it is flowed according to the direction of traffic/direction, select this road〇〇〇 ...〇〇〇〇 "The bit vector is logically or assumed that the node has 3 attached roads p ^ amps, and the first 2 decoded road segments have the following bit vector: OOOQQOOQQQOOOQOOQqqq

aOOOGOODOQDOOCOOOOOC 則第三個位元向量不需編碼,因為其僅可為: 1111111111111111111.1 此僅可在節點關的道路段之位元向量碰巧呈此次序時 起作用:所有位元向量為000.·000且最後_個位元向量為 111...111。在實務上,看來其相當頻繁地發生在較精細等 級(例如,等級0)網路(其為大多數道路段所在之處)中。 將前2個位元向量取為: 00000000000000000110 00000000〇〇〇〇〇〇〇〇〇〇!〇 150832.doc -94- 201211508 則除了為未知的且需要以某種方式編碼之2個位元之 外,第三位元向量的所有位元僅可設定成1。 11111111111111111??! 由於在上述實例中,已知曉大多數位元,故應可能使用 此資訊比編碼整個位元向量更有效率地編碼該2個未知位 元。因此,在此實例中,僅必需編碼2個位元。 使用此性質之可能的快速解碼方案將為藉由對道路段中 之所有先前的位元向量進行邏輯或運算來計算當前節點之 道路段中的所有經解碼之位元向量之位元遮罩。在使用與 早先之實例相同之實例的情況下,若一節點具有3個所附 接道路段,且若先前2個道路段具有以下位元向量: D0000000000000000110 ODDOOOOODOQOOOOOQ010 ...則邏輯或位元遮罩為: 00000000000000000110 將節點周圍的要編碼的第三個及最後的位元向量取作: :11111111111111111001 只要滿足以下條件,編碼器可自由編碼任何其他碼 (otherCode),而非編碼該 111 111 1 111 1 11 1 111001 之霍夫曼 碼(其可為罕見的): value_to…encode = -bitMask | otherCode 在此實例中,otherCode=0000000000000*0000000符合 要求,因為: value_t〇_enc〇de = IllllllllllllllllOOl - -0000000000000*QG〇〇11Q | 0000000000000*0000000 編碼 00000000000000000000 比編碼 11111111111111111001 150832.doc •95- 201211508 有效率得多,因為〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇頻繁地多。解碼 為快速的,因為解碼僅需要每當其解碼位元向量時計算位 元遮罩(邏輯或運算)且將該位元遮罩應用於最後的經解碼 之位元向量: 實際位元向量=位元遮罩&經解碼之位元向量 =〜00000000000000000110 & 00000000000000000000 = 11111111111111111001 在節點周圍的道路段經儲存以使得在位元向量中具有最 多1的一道路段處於末端區處的情況下,此最佳化運作良 好。然而,此可證明為困難的: •在計算位元向量之前執行對節點周圍的道路段之分類 (除非由果及因地(a posteriori)使用位元向量資訊來重 新編碼) •已根據道路名稱對道路段分類。有可能在道路名稱被 識別時對節點周圍的道路段分類。 使用網路等級 在始發節點周圍的道路段之位元向量與網路等級之間應 存在強相關:選擇至另一區之路徑將通常偏好選取粗略等 級網路(1等級將通常為粗略等級網路,且0針對較精細等 級網路)。 以下實例描繪具有處於不同網路等級之道路段之交叉 點: 4 線路(2)-> (1)在網路4處(重要) 線路(2)-〉(3)在網路5處(次要) 1---=2 = = -=-3 線路(2)-〉(3)在網路5處(次要) 150832.doc -96- 201211508 位元型樣很可能為如下: 2 1 ???????????? 2 3 ???????????? 34 000〇〇〇〇〇〇〇〇〇 不儲存在較精細網路等級之節點之位元向量 除了在接近目的地或起點之處以外,路徑選擇幾乎從不 經過不重要的道路段網路等級(諸如,網路等級5)。因此, 有可能不儲存等級5處之位元向量,且因而,對路徑選擇 之影響應最小(即使在等級5處之道路段之數目較大的情況 〇 下)。在大多數狀況下,路徑選擇將僅探索少數在路線之 開始或末端處的在最不重要的網路等級處之道路段,因為 其將迅速地到達一些更重要的道路段網路等級,且關於彼 等節點之搜尋加速資料將幾乎總是告知選路器(r〇uter)跳過 返回至最不重要的網路等級之導航段,並使用通向或繼續 停留在較重要的網路等級之導航段。此在最重要的網路等 級處為成立的’因為在目的地仍然遙遠時使用彼網 級。 〇 除了丟棄最不重要的道路段(例如,等級5)處之位元向 量之外’亦可不編碼彼網路處之區ID。 將位兀向量中之少數幾個0轉換成1 此亦為有損失的壓縮方案。 若位元向量僅含有僅一個〇(或可能地,小於—小臨限 值),則在產生以下結果的情況下將其轉換成丨可為有可能 的(亦即,將彼道路段設定為最快速路線之部分): 平凡位元向昼丨丨丨丨丨丨(因為以比編碼非平凡位元向 150832.doc -97· 201211508 量緊湊之方式來編碼平凡位元向量) •或已在當丽位元向量頁之歷史中發現的位元向量(因 為彼等位元向量也被更有效地編碼) 將位元向里中之〇轉換成1並不影響路徑選擇結果,其僅 會由於使路徑選擇考慮更多道路段(因為其現在被設定為 最快速路線之部分)而使路徑選擇較慢。然而,本發明之 二實施例可使用此方法_尤其是在地圖節省為較大的, 同時在路徑選擇速度方面的效能影響(pedormana 較 小的情況下。 路徑選擇 圖18展不地圖1600 ’其覆蓋-區域且具有-開始節點 1602及—目的地節點1604以及已由先前技術A*搜尋方法探 索的複數個道路段。由點線16〇6展示選定路線。 圖1—9展示地圖165〇,其與圖18之地圖覆蓋相同的區域且 '、展示相同的開始_點! 6〇2及目的地節點⑽4。該圖亦醒 、提不使用本發明之實施例而探索的道路,其利用了與用 、產生圖1 8之路線者相同的道路網路及相同的準則(例 士兩者皆乘汽車行進,希望將速度用作要最小化的成本 函數,蓉望:、 $ , -人以點線道路段1 606展示由該方法選 定之路綾,Β庙、+立 ^ 、’ 且應注忍,該道路段係與圖1 8中所計算之道路 段相同。I ^ 而,應注意,藉由本發明之實施例計算之路線 ° ‘、斤明的數學上準確的,且可找到關於已被選擇以最小 、σ成本模型之最好/最佳路線。因此,應顯而易 的是,告> 办+义,, 凡1 田/、先則技術相比時,由本發明之實施例探索之道 150832.doc -98- 201211508 ,又為顯者較少的。因而,與先前技術,方法相比,本發 之實施例之方法為較迅速的,且通常顯著較迅速。 亦應注意’隨著路線16G6逼近目的地16Q4,與開始相 更户路線被捸索;亦即,當路線“⑽前進超過點“η 寺為探索除了最低成本路線之外的道路。此情況之一種解 ^該方法在點1652處已自等、鳴切換至等級!區。應 、步看出’在目的地16G4附近探索其他道路段。再一 Ο ❹ Γ等=由注意到路線規劃方法將在此附近自等級1切換 至等級2來解釋此情況。 因此,當進行長程路徑選擇時, 速路線。,“,隨著方法在—條最快 纫η $ ,、 ;谀主較精細等級(例如,自等 、及〇至1),可能存在被標記為「最 , 探索的一條以上路線。 帛低成本」且因此需要被 可用二::::已被產生且位元向量被計算並儲存,則其 J用於计异兩個點之間的路線。 丹 圖20展示藉由路線規劃應 方法,其中在-節點處作出應進一;=路之先前技術Α· 策。為了達成此,將行進至下二道路段之決 —節點移至目標的估計成本。接著進—I加至自訂 起的具有最小成本之路徑。該等方法 '、自給疋即點 行目前為止已招致的成本之總和,且在持隨著該方法的進 小成本。 母—反覆處考慮最 舉例而言,於節點Β處開始,可 — Β(開始節點)相距2個成本單位。 知點C與D皆與 〜,自節點D起,到達 150832.doc -99- 201211508aOOOOGOODOQDOOCOOOOOC The third bit vector does not need to be encoded, as it can only be: 1111111111111111111.1 This can only be used when the bit vector of the road segment of the node happens to be in this order: all bit vectors are 000.·000 and The last _ bit vector is 111...111. In practice, it appears that it occurs quite frequently in a finer level (e.g., level 0) network (which is where most road segments are located). Take the first 2 bit vectors as: 00000000000000000110 00000000〇〇〇〇〇〇〇〇〇〇!〇150832.doc -94- 201211508 except for the 2 bits that are unknown and need to be encoded in some way All bits of the third bit vector can only be set to 1. 11111111111111111??! Since most of the bits are known in the above example, it should be possible to use this information to encode the 2 unknown bits more efficiently than encoding the entire bit vector. Therefore, in this example, only 2 bits must be encoded. A possible fast decoding scheme using this property would be to calculate the bit mask of all decoded bit vectors in the road segment of the current node by logically ORing all previous bit vectors in the road segment. In the case of using the same example as the previous example, if a node has 3 attached road segments, and if the previous 2 road segments have the following bit vector: D0000000000000000110 ODDOOOOODOQOOOOOQ010 ... then the logical or bit mask is : 00000000000000000110 The third and last bit vector to be encoded around the node is taken as: :11111111111111111001 The encoder can freely encode any other code (otherCode) as long as the following conditions are met, instead of encoding the 111 111 1 111 1 11 1 111001 Huffman code (which can be rare): value_to...encode = -bitMask | otherCode In this example, otherCode=0000000000000*0000000 meets the requirements because: value_t〇_enc〇de = IllllllllllllllllOOl - -0000000000000* QG〇〇11Q | 0000000000000*0000000 The code 000000000000000000000 is much more efficient than the code 11111111111111111001 150832.doc •95- 201211508 because 〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇 is much more frequently. Decoding is fast because decoding only needs to compute a bit mask (logical OR operation) whenever it decodes the bit vector and apply the bit mask to the last decoded bit vector: Actual bit vector = Bit Mask & Decoded Bit Vector ==00000000000000000110 & 00000000000000000000 = 11111111111111111001 Where the road segment around the node is stored such that a road segment with a maximum of 1 in the bit vector is at the end zone, this The optimization works well. However, this can prove to be difficult: • Perform a classification of the road segments around the node before calculating the bit vector (unless it is re-encoded using the bit vector information by a posteriori) • has been based on the road name Classify road segments. It is possible to classify road segments around a node when the road name is identified. There should be a strong correlation between the bit vector of the road segment around the originating node and the network level using the network level: the path selected to the other zone will generally prefer to select a coarse level network (1 level will usually be a rough level) Network, and 0 for finer level networks). The following example depicts intersections with road segments at different network levels: 4 Lines (2)-> (1) At Network 4 (Important) Lines (2)->(3) at Network 5 ( Minor) 1---=2 == -=-3 Line (2)->(3) At Network 5 (minor) 150832.doc -96- 201211508 The bit pattern is likely to be as follows: 2 1 ???????????? 2 3 ???????????? 34 000〇〇〇〇〇〇〇〇〇 is not stored in the node of the finer network level In addition to being close to the destination or starting point, the path selection almost never goes through an unimportant road segment network level (such as network level 5). Therefore, it is possible that the bit vector at level 5 is not stored, and therefore, the influence on the path selection should be minimal (even if the number of road segments at level 5 is large). In most cases, the path selection will only explore a few road segments at the least important network level at the beginning or end of the route, as it will quickly reach some of the more important road segment network levels, and The search acceleration data about their nodes will almost always tell the router to skip back to the least important network level navigation segment and use to or continue to stay at the more important network level. Navigation segment. This is true at the most important network level 'because it is used at the destination level when the destination is still far away. 〇 In addition to discarding the bitwise vector at the least important road segment (eg, level 5), the zone ID at the network may not be encoded. Converting a small number of zeros in a bit vector into 1 is also a lossy compression scheme. If the bit vector contains only one 〇 (or possibly, less than - small threshold), it may be possible to convert it to 丨 if the following result is produced (ie, set the road segment to Part of the fastest route): Ordinary bitwise Xiang (because the ordinary bit vector is encoded in a compactr way than the coding non-trivial bit to 150832.doc -97·201211508) • or already The bit vector found in the history of the tilde vector page (because their bit vector is also more efficiently encoded) converting the bit to 里 in the middle does not affect the path selection result, it will only be due to Make the path selection consider more road segments (because it is now set to be part of the fastest route) and make the path selection slower. However, the second embodiment of the present invention can use this method - especially in the case of a large map savings, while at the same time having a performance impact on the path selection speed (the pedormana is smaller. The path selection map 18 does not map 1600 'its The coverage-area has a start node 1602 and a destination node 1604 and a plurality of road segments that have been explored by the prior art A* search method. The selected route is displayed by the dotted line 16〇6. Figure 1-9 shows the map 165〇, It covers the same area as the map of Fig. 18 and 'shows the same start_point! 6〇2 and destination node (10) 4. This figure also wakes up and mentions the road that is not explored using the embodiment of the present invention, which utilizes The same road network and the same criteria as those used to generate the route of Figure 18. Both of them travel by car, hoping to use speed as a function of cost to minimize, Rong Wang:, $, - people The dotted road section 1 606 shows the roads selected by the method, the temples, the temples, and the road sections are the same as the road sections calculated in Fig. 18. I ^ By way of an embodiment of the invention The route ° ', Jin Ming's mathematically accurate, and can find the best / best route for the model that has been selected with the minimum, σ cost. Therefore, it should be obvious that the sue > When the field is compared with the prior art, the way of exploring the embodiment of the present invention is 150832.doc -98-201211508, which is less obvious. Therefore, compared with the prior art and the method, the present invention The method of the embodiment is relatively fast, and usually significantly faster. It should also be noted that 'as the route 16G6 approaches the destination 16Q4, the route with the starting home is searched; that is, when the route "(10) advances past the point "n" The temple is to explore the road except the lowest cost route. A solution to this situation is that the method has been self-contained at point 1652 and switched to the level! area. It should be seen that it is 'exploring other road segments near destination 16G4.再 Γ Γ = = By explaining that the route planning method will switch from level 1 to level 2 to explain this situation. Therefore, when making long-range path selection, the speed route., "With the method in- The fastest nt η $ , , ; Levels (for example, self-equal, and 〇 to 1) may exist as "most, explore more than one route. 帛 low cost" and therefore need to be available 2:::: has been generated and the bit vector is calculated And store it, then its J is used to calculate the route between two points. Dantu 20 shows the method by route planning, where the at-node is made to advance; = the previous technology of the road. In order to achieve this , the decision to move to the next two road segments - the estimated cost of moving the node to the target. Then add -I to the custom path with the least cost. These methods, self-sufficiency, point line has been incurred so far The sum of costs, and the cost of keeping the approach small. The mother-reverse is considered to be, for example, starting at the node, where – Β (starting node) is 2 cost units apart. Knowing points C and D are both ~, starting from node D, reaching 150832.doc -99- 201211508

本為3個單位,且自節點❻,到達節點R 單位。因此,該,方法將比探索至節點c之 、、泉更為優先地探索至節點D之路線 之道路段而言’至下―節點之成太力5為對於至印點〇 目標之估計成本較 (亦即,B〇2+5 = 7,而 BD=2+3 = 5)。 路^慮制本發明之實施例之最小成本位元向量來執行 劃一道路段之位元(亦即,圖ι〇之攔7〇4)識別 路奴疋至目的地區之最小成本路徑之部分的候選 者。因而’將關於圖20所描述之^方法修改成圖Μ中所展 示者。 \ 通常,使用位元向量執行路線規劃,如關於圖Μ所描 述。然而,本發明之一些實施例可允許在各種情況下使路 線規d退回至Α (或其他先前技術方法)。不同實施例可利 么用以下各項中之任—者:遺漏位元向4資訊(藉此允許系 統甚至在不存在位元向量的情況下起作用);使用成本函 數;除了針對其計算了位元向量之成本函數之外的路徑選 擇(通常最快速路線,但未必如此);使用者指定了與用於 預先計算位元向量之彼等準則不同的準則(例如,使用者 希望避免高速公路);運輸工具類型不同於用於預先計算 位元向量之運輸工具類型(例如,使用者步行且不乘汽 車);及路線低於臨限長度(例如,路線之起點及終點在同 一區内)。 在與圖20相比時,在圖21上展示兩個額外數字18〇〇、 1801。另外,在該圖上以虛線道路段丨8〇2及丨8〇4來表示諸 150832.doc -100- 201211508This is 3 units, and from the node ❻, to the node R unit. Therefore, the method will be compared to the road segment that explores the route to the node D more preferentially than the node C, and the 'to the next node' is too strong 5 is the estimated cost for the target to the printing point. Comparison (ie, B〇2+5 = 7, and BD=2+3 = 5). The minimum cost bit vector of the embodiment of the present invention is used to perform the segmentation of the segment of the road segment (ie, Figure 7〇4) to identify the portion of the minimum cost path from the road slave to the destination area. Candidate. Thus, the method described with respect to Fig. 20 is modified to be shown in the figure. \ Typically, route planning is performed using a bit vector, as described in relation to Figure 。. However, some embodiments of the present invention may allow the route gauge d to be returned to Α (or other prior art methods) under various circumstances. Different embodiments may use any of the following: missing bits to 4 information ( thereby allowing the system to function even in the absence of a bit vector); using a cost function; in addition to calculating for it Path selection outside the cost function of the bit vector (usually the fastest route, but not necessarily); the user specifies criteria that are different from their criteria for pre-computing the bit vector (eg, the user wants to avoid the highway) ); the type of transport is different from the type of transport used to pre-calculate the bit vector (for example, the user walks without taking the car); and the route is below the threshold length (for example, the start and end of the route are in the same area) . When compared to Figure 20, two additional numbers 18A, 1801 are shown on Figure 21. In addition, on the figure, the dotted road segments 丨8〇2 and 丨8〇4 are used to indicate 150832.doc -100- 201211508

G Ο 區。「1」1800指示道路段BD是自節點6至目標節點所位 於的區之—個最小成本路徑之部分。「G」18G1指示道路 段BC不是自節點B至目標節點所位於的區之任何最小成本 路徑之部分。 因而’當自節點A開始時’本發明之實施例將使用上文 所概述m從a起探索節點。然而,—旦已到達節點 則…而進步使用該探索,因為存在僅道路段BD為最 小成本路徑之可能部分的明確標記。因而,一旦A*方法已 被使用且找到最小成本路徑,則其隨後將藉由查看位元向 量内之相關位元而選擇最小成本路徑。 然而’若在不同時間在一對區之間存在不同的最小成本 路徑’則最小成本資料可識別該對區之間的一個以上最小 成本路徑。因此’開始節點與目標節點(起點與目的地)之 間的路徑選擇可能找到一個以上最小成本路徑,且必須在 競爭的最小成本賴之間做出選擇,例如在道路段BD之 數字刪及道路段BC之數字職皆具㈣示每 A 4* -ΐ* α* ΒΒ ^ θ . . . 在特定時間為最小成本路徑的部分之值 j此實施例中’位兀向量不識別每_道路段為最小成本路 徑之部分㈣間。因此,路徑選擇演算法基於行進於該路 =之段上的時間來實行對兩個可能的最小成本路徑之成本 分析。可根據自起點/開始節點之出發時間確定此時間。 速度概況與每-段相關聯(如圖他中所展示),該速度概 況係關於經由該段之行進之預期速度如何隨著時間:變 化。根據此等速度概況,可確定在相關時間之預期速度, 厂G Ο area. "1" 1800 indicates that the road segment BD is part of the minimum cost path from the node 6 to the zone in which the target node is located. "G" 18G1 indicates that the road segment BC is not part of any minimum cost path from the node B to the zone in which the target node is located. Thus, when starting from node A, embodiments of the present invention will use the m outlined above to explore nodes from a. However, once the node has been reached, the exploration is used progressively because there is a clear indication that only the road segment BD is a possible part of the least cost path. Thus, once the A* method has been used and the least cost path is found, it will then select the least cost path by looking at the associated bits within the bit vector. However, if there are different minimum cost paths between a pair of zones at different times, then the minimum cost profile can identify more than one minimum cost path between the zones. Therefore, the path selection between the starting node and the target node (starting point and destination) may find more than one minimum cost path, and must choose between the minimum cost of competition, for example, the number in the road segment BD is deleted. The number of positions in the segment BC (4) indicates that each A 4* -ΐ* α* ΒΒ ^ θ . . . is the value of the portion of the minimum cost path at a specific time. j In this embodiment, the position vector does not identify each _ road segment. Part of the minimum cost path (four). Therefore, the path selection algorithm performs a cost analysis of the two possible least cost paths based on the time traveled on the segment of the path. This time can be determined based on the departure time from the start/start node. The speed profile is associated with each segment (as shown in the figure), which is about how the expected speed of travel through the segment changes over time: Based on these speed profiles, the expected speed at the relevant time can be determined, the plant

J 的情況下 150832.doc 201211508 確定在彼時間沿著彼道路段行進之成本。藉由 母—最小成本路徑之道路段行進之成本,可確定 母敢小成本路徑之成本。導t拉 右畏柄士士 羞置可接著將在彼時間呈 有取低成本的最小成本路徑選擇作為路線。 可在顯不206上顯示所確定之路線。_為如何 路線顯不於地圖資料上之一實例。 、 一在此實施例中,顯示器包含在路線之可導航段中之至少 :些2航段上的預期速度之指示。對於此實施例,此等 曰:為對路線之著色及在地圖之影像之側面的時間列細 ^不沿著該路線之預期速度。舉例而言,若預期速度超 過第一臨限值,則可將可導航段著色為第-顏色(例如, 綠色)’且若預期速度低於第_ 限值,則可將可導航段 者色為第二顏色(例如,紅色)。 現將參考圖_及圖24至圖31而論述確定路線之一替代 方法。可確定表示隨著時間的推移而改變的成本之成本概 而非確定在特定時間路線之成本。在此實施例中,將 母一可導航段之速度概況的多個值而非單一值用以石霍定路 線之成本概況。 舉例而言’參看圖21,每一路線之成本為成本如何隨著 時間的推移而變化之分佈,而非具有每一道路段Bc、ce 等等之單-冑。將此等成本分佈求和以確定路線之成本概 況。亦在圖l〇a中展示成本概況經由樹之傳播。 在此實施例中’每一可導航段具有與其相關聯之速度概 況,其對於每小時包含12個時間組(time bin),每-時間組 150832.doc -102- 201211508 含有在彼時間經由可導舫 等舭奴仃進之預期速度。確定每一組 之預期速度之成本,η腺 、 將路線之可導航段之每一相關組的 成本求和以確定成本概況。 母奴之所求和之值可能並非 ΛΑ自相同日守間的組,因為沿著每—段行進之預期時間將視 預測使用者何時到達每—可導航段而變化。舉例而言,可 預測,使用者將花5分鐘沿著可導航段BD行進,因此,針 Ή又BD及DF而求和到—&的組值可為相隔$分鐘之組值, 亦ρ將Bc之時間組τ之值添加至DF之時間組τ+5之值。 僅仏索為最小成本路徑之部分的可導航段,而不探索並In the case of J 150832.doc 201211508 determines the cost of traveling along the road segment at that time. The cost of the parental small cost path can be determined by the cost of the road segment of the parent-minimum cost path. The t-shoulders of the right-handed stalker can then choose the route with the lowest cost path to take the low cost at that time. The determined route can be displayed on display 206. _ How the route is not visible on one of the map materials. In this embodiment, the display includes an indication of the expected speed on at least two of the navigable segments of the route. For this embodiment, these are: the time series for the color of the route and the side of the image of the map are not the expected speed along the route. For example, if the expected speed exceeds the first threshold, the navigable segment can be colored to a first color (eg, green) and if the expected speed is below the first limit, the navigable segment can be colored Is the second color (for example, red). An alternative method of determining a route will now be discussed with reference to Figures _ and 24 through 31. The cost of representing a cost that changes over time can be determined rather than determining the cost of the route at a particular time. In this embodiment, multiple values of the velocity profile of the parent-navigable segment, rather than a single value, are used for the cost profile of the Shihuoding route. For example, referring to Fig. 21, the cost per route is a distribution of how the cost changes over time, rather than having a single-turn of each road segment Bc, ce, and the like. These cost distributions are summed to determine the cost profile of the route. The distribution of cost profiles via trees is also shown in Figure l〇a. In this embodiment, 'each navigable segment has a velocity profile associated therewith that contains 12 time bins per hour, per-time group 150832.doc -102 - 201211508 containing at some time The expected speed of the shackles. The cost of the expected speed for each group is determined, η g, and the cost of each relevant group of navigable segments of the route is summed to determine the cost profile. The sum of the maternal slaves may not be from the same day-to-day group, as the expected time to travel along each segment will vary depending on when the user is predicted to arrive at each-navable segment. For example, it can be predicted that the user will spend 5 minutes to travel along the navigable section BD, so the acupuncture and BD and DF summed to the group value of -& can be a group value of $ minutes apart, also ρ The value of time group τ of Bc is added to the value of time group τ+5 of DF. Search only for navigable segments that are part of the least cost path, without exploring and

非最小成本路徑之部分的競爭可導航段。因此,對於待考 慮的路徑BDF及BCEF兩者,兩個路徑必須被最小成本資 料識別為最小成本路徑。 若兩個路徑BDF及BCEF為在不同時間的最小成本路 裎,則在兩條路線相交之節點F處,BDF及BCEF之成本概 況需要在某種程度上被留存且可能被進一步傳播。為了達 成此’處理器實行與將兩個成本概況(C丨及C2)彼此疊置等 效之計算’且確定上界分佈UB (以實線展示)及下界分佈 LB(以點線展示)。在圖3 0及圖3 1中展示此。UB及LB分佈 接著被用於進一步傳播,從而允許確定每一路線之最大及 最小成本概況。 以與後續可導航路線之成本值被添加至此等概況類似的 方式發生上界分佈及下界分佈之進一步傳播。若所探索之 路線分開,且接著又在類似於節點F之以後的節點處相 交’則藉由將每一進入路徑之兩個上界概況重疊以確定單 150S32.doc •103· 201211508 新的上界概》兄且藉由將每一進入路徑之兩個下界概況重 疊以確定單-新的下界概況來再次處理該兩個上界概況及 。亥兩個下界概況。以此方式,將概況之數目的增加保持在 不會過度阻礙痛定路線所花費的時間或不會需要大 體(因為在PND上記憶體為有限的)之等級。 ° μ 在另-實施例中,僅留存上界概況及下界概況中之 以供沿著路線進-步傳播。在另一實施例中,確定兩個進 入概况之平均值以產生用於沿著路線進—步傳播之平均概 況0 -旦已確定整條路線之成本概況,則將上概況或下概況 中之-者選擇為最後成本概況,其係用以確定在導叙裝置 上之顯示,如現在將加以解釋。 圖24及圖25說明可顯示成本概況之多個值之方式。 在圖24中,藉由顯示自起點之出發時間及在目的地之到 ::以及隔開預定量(在此實施例中為15分鐘)的離散出 間之時間列來說明成本概況。與圖23中之時間列2_ 相似’每-時間列經彩色編碼以指示沿著路線之不同部分 速度二提供箭頭2〇01、2°°2,當由使用者選擇該等 1日:’使得顯示器顯示出發時間及到達時間的對,以及 =或較遲開始時間之時間列(選擇左箭頭·使得顯示 ^開始_ ’及選擇右箭頭2⑽使得顯示較遲開始時 選擇時間列可使得顯示針對選定開料間的顯示晝 面(類似圖23中所展示者)。 在圖25中’將成本概況顯示為在一組時間段上(在此實 150832.doc -104· 201211508 例中,在⑽個小時(等同於一週)中)之連續曲線圖。將此 Z圖連@ %圖—起顯示,該地圖說明有助於形成此成 ❹ 瑪:兄:二起點至目的地之路線。將曲線圖及路線彩色編 馬(如由貫線及點線所說明)以使得使用者可確定在什麼時 :將使用哪些路線。舉例而言,將7小時4〇分鐘與9小扣 IS二的曲線圖著色以展示在路線之開始’應遵循虛線 =勝而非點線路線2004之第一部分。此顯示允許使 用者容易地看到在起點與目的地之間行進之成本如何隨著 時間的推移而改變及此如何影響路線。 、圖26至圖28說明—替代實施例。在此實施例中,已確定 =本概況’如上文所描述,但僅顯示針對由使用者指定的 Z時間而確定之路線之影像。然而,顯示有方塊厕, ^不所顯示之路線可適用的日及時間。可由使用者在檢 ^不所確定之路線的料之影像的同時選擇設在日 時:广任一側的箭頭以改變曰及/或時間。改變曰及/或 在:可引起路線改變,且顯示器被更新以顯示新路線以及 =該路線上行進所花費之時間及所行進之距離的任何改 -。在圖27及圖28中展示此等經更新之顯示器的實例。 /即時」地(例如,在毫秒之數量級)發生顯示器之更 ’例如’小於刪毫秒且較佳小於⑽毫秒。可經由使 用預處理之最小成本資料,及/或 乂囚為針對此等其他時間 間路線已經由概況搜尋而石t定來達成此等快速重新計算時 圖抑明使用概況搜尋之導航裝置之另外功能。在此實 J50832.doc -105- 201211508 =’在選擇了旅程時間(例如,開始時間)時,導航裝 置之處理器可比較在彼時間行進之成本與在彼旅程時間周 圍之窗⑽如,旅程時間土30分鐘)中成本概況之值。若卢 理器發現彼窗内之旅程時間具有較低成本,則處理器可= 顯不器顯示給出較佳結果之旅程時間的指示。舉例而古, 在所說明之實施例中,顯示備註2〇15,該備註則通知使 用者若他,她15分鐘後行進,則行進時間將為較短的(在此 情況下,短1 〇分鐘)。 為了執行目前為止所描述之路徑選擇,使用解碼過程自 關於圖11至圖13所描述的經編碼之側標案獲得位元向量資 訊。 上文所描述之預處理之輸出包含: •對大多數節點之階層式區指派,及 •對此等節點處之外出道路段之位元向量指派。 地圖載入 一致性檢查 當載入地圖資料時,側檔案之集合應呈現於地圖目錄 中,否則,解碼器將撤銷啟動搜尋加速資料,使得在不具 有搜尋加速資料的情況下實行路線搜尋。存在有助於確保 資料完整性之若干檢查,現在列出該等檢查。 側檔案遵循命名慣例。 等級之數目由側檔案之數目給出,但等級之數目亦儲存 於每一側檔案之標頭中且等於側檔案之數目。 每一側檔案儲存在其各別等級處之區之數目,其與在側 150832.doc -106- 201211508 檐案名稱中指定之數目相同。此外,側權案儲存以下資訊 (其對於所有側檔案應相同): •側檔案版本。 每「位70向量頁」之節點之數目(下文解釋)。 母側檔案中亦存在總和檢查瑪,其識別 •特定的整個側檔案集合 •整個地圖。 對於給定電子地圖之相關聯之側檔案,此等資訊應為正 確的.右上述檢查中之任一者失貝乞,則將不針對此地圖啟 動搜尋加速資料特徵。 載入至記憶體中之資料結構 旦解石馬器讀取外部記憶體實施中之侧標案。此意謂位元向 量:二樓案之内容不被完全载入至記憶體中,而是僅根據需 要來項取。然而’在開始時一些一般性資料被載入至記憶 體中’且只要該地圖被載入,該等資料就被保持於立中。 ^ 標頭資訊A competing navigable segment of a portion of the non-minimum cost path. Therefore, for both paths BDF and BCEF to be considered, the two paths must be identified as the least cost path by the least cost data. If the two paths BDF and BCEF are the minimum cost paths at different times, then at the node F where the two routes intersect, the cost profiles of the BDF and BCEF need to be preserved to some extent and may be further propagated. In order to achieve this, the processor performs the calculation of the two cost profiles (C丨 and C2) on top of each other and determines the upper bound distribution UB (shown in solid lines) and the lower bound distribution LB (shown in dotted lines). This is shown in Figure 30 and Figure 31. The UB and LB distributions are then used for further propagation, allowing for the determination of the maximum and minimum cost profiles for each route. Further propagation of the upper bound distribution and the lower bound distribution occurs in a manner similar to the cost value of subsequent navigable routes being added to such profiles. If the routes being explored are separated, and then intersect at a node similar to node F, then by overlaying the two upper bound profiles of each entry path to determine a single 150S32.doc • 103· 201211508 new on The two upper bound profiles are again processed by overlapping the two lower bound profiles of each entry path to determine a single-new lower bound profile. Hai two lower bounds overview. In this way, the increase in the number of profiles is maintained at a level that does not unduly obstruct the painful route or does not require a general (because the memory on the PND is limited). ° μ In another embodiment, only the upper bound profile and the lower bound profile are retained for further propagation along the route. In another embodiment, determining an average of the two entry profiles to generate an average profile for further propagation along the route 0 - once the cost profile for the entire route has been determined, then the upper profile or the lower profile is The person chooses the final cost profile, which is used to determine the display on the navigation device, as will now be explained. Figures 24 and 25 illustrate the manner in which multiple values of the cost profile can be displayed. In Fig. 24, the cost profile is illustrated by displaying the departure time from the start point and the time interval from the destination to :: and separating the predetermined amount (15 minutes in this embodiment). Similar to the time column 2_ in Figure 23, the 'every-time column is color coded to indicate that the speeds two along the different parts of the route provide arrows 2〇01, 2°°2, when the user selects the 1st day: 'make The display shows the pair of departure time and arrival time, and the time column of = or later start time (select left arrow · make display ^ start _ ' and select right arrow 2 (10) so that the display time column can be selected later to make the display select The display area between the opening materials (similar to the one shown in Figure 23). In Figure 25, the cost profile is displayed as a set of time periods (in this case, 150832.doc -104·201211508, in (10) A continuous graph of hours (equivalent to one week). This Z map is displayed in conjunction with the @ % graph, and the map description helps to form this ❹: brother: the route from the second starting point to the destination. And route color horses (as illustrated by the line and dotted lines) so that the user can determine when: which route will be used. For example, a plot of 7 hours 4 minutes and 9 small buckle IS II Coloring to show at the beginning of the route 'should Follow the dotted line = win instead of the first part of the dotted line line 2004. This display allows the user to easily see how the cost of traveling between the starting point and the destination changes over time and how this affects the route. An alternative embodiment is illustrated in Fig. 28. In this embodiment, it has been determined that the present profile is as described above, but only images of the route determined for the Z time specified by the user are displayed. , ^ The date and time when the route not displayed can be applied. The user can select the day/day of the day when the image of the route is not determined by the user: the arrow on either side of the width changes the time and/or time. Changing 曰 and/or at: may cause a route change, and the display is updated to display the new route and = any time spent traveling on the route and any distance traveled - as shown in Figures 27 and 28 An example of an updated display. / Immediately (eg, on the order of milliseconds) occurs when the display is more 'eg' less than milliseconds and preferably less than (10) milliseconds. Information and/or prisoners are additional functions for the use of the navigation device for the use of the profile search for these other time-based routes that have been searched by the profile and to achieve such rapid recalculations. -105- 201211508 = 'When a journey time (eg, start time) is selected, the processor of the navigation device can compare the cost of traveling at that time with the window around the time of the trip (10), for example, 30 minutes of journey time) The value of the cost profile. If the LUC finds that the journey time within the window has a lower cost, the processor can = display the indication of the journey time giving the better result. By way of example, in the illustrated embodiment, a note 2〇15 is displayed, which notifies the user that if he or she travels after 15 minutes, the travel time will be shorter (in this case, 1 short) minute). To perform the path selection described so far, the bit vector information is obtained from the encoded side standard described with respect to Figures 11 through 13 using a decoding process. The output of the pre-processing described above includes: • Hierarchical zone assignments for most nodes, and • Pixel vector assignments for outbound road segments at these nodes. Map Loading Consistency Check When loading map data, the collection of side files should be presented in the map directory. Otherwise, the decoder will undo the search acceleration data so that the route search can be performed without search acceleration data. There are several checks that help ensure the integrity of the data, which are now listed. Side files follow a naming convention. The number of levels is given by the number of side files, but the number of levels is also stored in the header of each side file and equals the number of side files. The number of areas on each side of the file stored at their respective levels is the same as the number specified in the side name of the file 150832.doc -106- 201211508. In addition, the side rights file stores the following information (which should be the same for all side files): • Side file version. The number of nodes per "bit 70 vector page" (explained below). There is also a sum checkmark in the parent file, which identifies • a specific entire set of side files • the entire map. For the associated side file of a given electronic map, such information should be correct. If any of the above checks are lost, the search acceleration data feature will not be launched for this map. The data structure loaded into the memory The denier horse reads the side standard in the implementation of the external memory. This means that the bit vector: the content of the second floor case is not completely loaded into the memory, but only according to the needs. However, 'some general information is loaded into the memory at the beginning' and as long as the map is loaded, the data is kept in the middle. ^ Header Information

U 每一側檔案以標頭區段開始,該標頭區段含有上文關於 圖8至圖10所描述之資料。每一側檔案之此資訊被儲存於 記憶體申。 霍夫曼樹定義 側槽案含有料霍夫曼樹之^義。每—霍夫曼樹定義給 出對特定霍夫曼編碼之完整描述,且稍後被用以將側楷案 位m π分解碼成原始資料(亦即,將來自側標案的 位元序列解碼成-數目或某其他特定值)。自每—側標案 150832.doc •107- 201211508 讀取以下霍夫曼樹定義且將其保持於記憶體中。 •用於解碼每一節點處之道路段之赵a 曰之霍夫曼樹。 (經編碼之道路段數目可比基礎地圖中 叩道路段之數 目小。注意,角牛碼器獨立於基礎地圖,介日 亦即,其不需 要讀取地圖)。此霍夫曼樹僅儲存於箄 于、寺級〇之側檔案 中 〇 •用於解碼頁瑪之霍夫曼樹(下文解釋)。 •用於解碼位元向量區塊之若干霍夫曼樹。樹定義之數 目係由如儲存於側檔案標頭中之規則位元向量區塊長 度給出;其等於區塊長度減去—。(道路段之位元向〜 量之整個位元串被分裂成區塊。若位元向量位元串之 長度不是規則區塊長度之倍數,則最後區塊為較短 的對於自2直至規則區塊長度之每一區塊長度,存 在—個霍夫曼樹。霍夫曼樹不被用於長度為_之區 塊,因為此僅為一位元且被直接儲存)。 •用於選擇位元向量之解碼方法之若干霍夫曼樹。在標 頭中指定此等樹之數目;在下文解釋其使用。 鄰居清單 在除了取精細等級之每一等級處,側槽案編碼鄰居清 單。等級k處之區之鄰居清單為零或零個以上被稱為等級k R鄰居的等級㈣)區之清單。等級k的側樓案之鄰居清 單區段具有兩個部分。 卜P刀3有每—等級k子區之鄰居區之數目。舉例 °(k〖)’右在全域等級0處存在4000個區,且每— 150832.doc -108- 201211508 全域區被再分成10個等級丨區,則等級丨側檔案含有 4〇〇〇χΐ〇個等級丨子區。對於此等子區中之每一者,給 出個別鄰居清單(其由等級2區組成)之長度。 •第二部分含有實際鄰居清單,其各別長度自第一部分 獲知。每—鄰居清單為等級(k+Ι)子區之清單。 區重新映射表U Each side of the file begins with a header section containing the information described above with respect to Figures 8-10. This information on each side of the file is stored in the memory application. Huffman Tree Definition The side trough case contains the Huffman tree. The per-Huffman tree definition gives a complete description of the specific Huffman coding and is later used to decode the side file m π into the original data (ie, the bit sequence from the side standard) Decode into a number or some other specific value). From the per-side standard 150832.doc •107- 201211508 Read the following Huffman tree definition and keep it in memory. • The Hoffman tree used to decode the road segments at each node. (The number of coded road segments can be smaller than the number of road segments in the base map. Note that the Horn Coder is independent of the base map, which means that it does not need to read the map.) This Hoffman tree is only stored in the file on the side of the temple, and is used to decode the Huffman tree of the page (explained below). • Several Huffman trees for decoding bit vector blocks. The number of tree definitions is given by the length of the regular bit vector block as stored in the side file header; it is equal to the block length minus -. (The entire bit string of the bit segment of the road segment is split into blocks. If the length of the bit vector string string is not a multiple of the regular block length, then the last block is shorter for the rule from 2 until the rule For each block length of the block length, there is a Huffman tree. The Huffman tree is not used for blocks of length _ because this is only one bit and is stored directly). • Several Huffman trees for selecting the decoding method of the bit vector. Specify the number of such trees in the header; explain their use below. Neighbor List The side slot encodes the neighbor list at each level except the fine level. The list of neighbors in the zone at level k is zero or more than the list of zones (four)) known as rank k R neighbors. The neighbor list section of the grade k case has two parts. The P-knife 3 has the number of neighboring areas per sub-level k sub-area. For example, °(k〖)' right has 4000 zones at the global level 0, and each - 150832.doc -108- 201211508 global zone is subdivided into 10 ranks, then the level file contains 4〇〇〇χΐ A level of scorpion area. For each of these sub-zones, the length of the individual neighbor list (which consists of level 2 zones) is given. • The second part contains a list of actual neighbors, each of which is known from the first part. Each neighbor list is a list of rank (k+Ι) subzones. Area remapping table

側槽案如)藉由聚結及重新排序等等而以壓縮格式儲 存位70向量。等級以之側檀案具有用以解屋縮按區塊編 碼之位元向量的區重新映射表。其由兩部分組成: 第一部分為按等級k子區編索引之陣列。對於等級以 •一卞 ^----里 < 节:沒。此対 於按區塊編碼位元向量的各別子區中之節點之彼等外 出道路段為相關的。 第二部分為按⑴未壓縮之位元向量中之位元位置及 ⑽級奸區編索引的二維陣列。該等陣列輸入項指 疋:按區塊讀取的未壓縮位元串中之給定位元位置在 經壓縮位元向量中的位元位置。 二部分僅在解 僅在全域等級 注意,僅第—部分被保持於記憶體中;第 碼期間被按需使用,因為其為大的。當前, 側檔案(k=〇)處儲存區重新映射表。 起始路線查詢 解碼器係用以加速自屮淼 ^ ^ ^ 夯位置至目的地節點集合之路線 搜哥。(目的地由一個以卜 即點組成的實例為將整個道路 路'^又用作目的地的情況〗 的地ip點界定—或多個目標 150832.doc -109- 201211508 區之集合。 注意’目標區為區ID之序列,每一分割等級有一區 ID(開始於等級〇處)。在每一新搜尋的開始,藉由清除先 前目標區集合且將新的目的地節點傳遞至解碼器而建立目 才示區之集合。解碼器將確定不重複的目標區之清單。用於 找到給定節點之區的機制與在搜尋期間相同;細節見下 文0 在路線搜尋期間掃描節點 剩餘論述假定已設定目標區之集合。解碼器之特徵為各 被提供道路網路之節謂時傳回按離開此節點之道路段: 索引的位元陣列(此節點及給定 人'口疋曰铩E之位兀向量)的功 能。節點及節點處之道路段之排序由地圖界定。無論何時 位元值為零時’此意謂在搜尋期間可,忽略對應道路段。 (此通常導致搜尋空間的大量 里錢V且因此搜尋之運作丰 的大量減少)。 $间 對於少數節點,區資邙式你_人θ 匕貧a或位疋向量資料皆不 :中。對於此等節點’解碼器傳回所有位〗的= 串。(此將防止路線搜尋跳過此節點處之任何道路= 处 對、,'°疋即點之狀況的布林杳詢劝 月b。此外,存在指示給定 丄 即,·'占疋否位於先前所定位之曰捭 區中之一者中的布林杳詢 不The side slot case stores a bit vector in a compressed format by coalescing and reordering, and the like. The class side tile has a zone remapping table for solving the bit vector of the block code. It consists of two parts: The first part is an array indexed by level k sub-areas. For the level, • 卞 ^---- in the < section: no. This is related to the outgoing road segments of the nodes in the respective sub-areas of the block-coded bit vector. The second part is a two-dimensional array indexed by (1) the bit position in the uncompressed bit vector and the (10) level. The array entry fingers are: the position of the location element in the uncompressed bit string read by the block in the compressed bit vector. The two parts are only in the solution only at the global level. Note that only the first part is kept in the memory; the first period is used as needed because it is large. Currently, the storage file is remapped at the side file (k=〇). Start route query The decoder is used to speed up the route from the ^ ^ ^ 夯 location to the destination node set. (The destination is defined by an instance of a point-by-point point that defines the entire road path as a destination, or a collection of multiple targets 150832.doc -109-201211508. The target area is a sequence of area IDs, each partition level having a zone ID (starting at level 。). At the beginning of each new search, by clearing the previous target zone set and passing the new destination node to the decoder A set of target areas is created. The decoder will determine the list of target areas that are not repeated. The mechanism for finding the area of a given node is the same as during the search; see below for details. 0 Scanning nodes during the route search Set the set of target areas. The decoder is characterized by the segment of the road network that is provided to return the road segment that leaves the node: the indexed bit array (this node and the given person's mouth E The function of the position vector. The order of the road segments at the nodes and nodes is defined by the map. Whenever the value of the bit is zero, this means that during the search, the corresponding road segment is ignored. (This usually leads to the search. A large amount of money V and therefore a large reduction in the operation of the search.) For a few nodes, the area is 你 _ _ θ 匕 a a 或 or a bit 疋 vector data are not: in. For these nodes 'decoder Returns the = string of all bits. (This will prevent the route search from skipping any road at this node = right, ''疋' is the status of the Brin ask for the month b. In addition, there is an indication given丄 ie,··············································

,& ―幻功犯。由解碼器傳回的在目栌F, & ― 幻 功. Returned by the decoder in the directory F

中之節點之位元向量再_^4 J隹目拣Q 算“本… 為所有位元為1的位元串。此 荨布爾查δ旬功能係用於路 岭綠搜哥中之最佳化。 根據側標案格式,按若+半酿么 杈右干步驟解碼給定節點之位元向量 150832.doc -110. 201211508 每-側檔案中’將區及位元向量資訊組織成所謂 ’頁之節點之數目為2之固定冪(例如,16),且對於 側檔案集合中之每一側_ 、 外 j檔案為相同的。此意謂,對於給定 . ―,可藉由簡單的位元移位來計算位元向量頁之頁索 引。卽點之資訊被按節點ID連續儲存。 .•找到給定節點之頁偏移 對於每一側擋幸,备百+ a - Λ 樓案之標頭中。ί被均數目被儲存於側 〇 八被用以藉由使頁索弓丨乘以平均大小而近 二中之位元組偏移。將校正項儲存於按頁索引來編索 引之表中。此表被儲存於側槽案之單獨區段中 時,在表中查找校正項,且將該校正項加至近似頁偏移頁 從而給出該頁在側檔案中之位置。 解碼頁 快取 當第-次查詢頁時,解碼(相對於固定 取該頁中之節點之位元 γ)亚快 ° . ^ ± 人自冋—頁查詢節點 之貝枓寺’可使用經快取之資料而不進行任何側槽案存 .=解碼之位it向量位元串中的特殊標記位元係用以記 • 住该節點是否為無資訊節點。 - 頁碼 對於每-頁’所謂的頁碼位元指定該頁中之所有 否具有相同區ID。頁碼對於每等級含有—個仅元,作所 =在等級。側樓案中之頁的開始處被儲存為共同霍夫 150832.doc -111- 201211508 解碼外出道路段計數 如上文所提及’每一頁含有固定數 點之此數目鍅六从a 即點之貢訊。節 啫存於母一側檔案之標頭中。— (或針對等級0,+ I —頁之開始 在頁碼之後),該頁列出該頁 t外出道路段之數目。無論何時外出道路段點 此意謂根本未储存對應節點之資數目為零 數目被儲存於臨時陣列中。 知碼该頁時, 解碼區 在道路段計數區段之後是區區段 列給出,每-等級處有一個_。特定等=區1D之序 對應側檔案中。解 4 區m儲存於 之區。當未财 所有節點在所有等級處 田未儲存節點之資訊(亦即,節 零)時’使區次%丸办 ’ ^路段計數為 β貝讯為工的。解碼器讀取道路段 的弟-個節點之區ID序列。若給定等級 大於令 級虑夕新女r "、处之頁瑪指定彼等 所有區ID為相同的’則在彼等級處為所有節 相同㈣。否則,讀取具有正道路 。又疋 對應等級處的㈣。在此過程之結束時,解=點之在 的充表(其中-些序列可為空 解碼位元向量 找到相關位元位置之集合 對於給定節點及目標區而言,特 — 疋離開此即點之道路段的位元向量位元之值。 以上目標㈣,將*存在一個 起進仃迦輯或運算。對於每 I50832.doc -112- 201211508 一節點,解碼器畔苜Μ , — 彳舁相關位元位置之集合。對於彼節點處 之母一外出道路段,如 — 相關位凡位置之集合相同。其僅視節 2之&及目標區之集合而定。若僅存在一個目標區,則在 一等級處將僅存在—個相關位元位置;換言之,對於此節 點,可忽略其他等級處所儲存之資訊。在一個以上目標區 之狀況下,一此;):日關A - 二fl位凡位置可重合,所以總是至多存 與存在的目標區—楛& 樣多之相關位元位置。在下文中,將 Ο Ο 述解碼器如何確定_袖g 4Φ 個目^區之相關位元位置。對於—個 以上目標區而言,以4 同方式找到相關位元位置且將相關 位元位置組合成一集合。 當未界定鄰居區時,對於每—等級處之每—目標區存在 一個位元向量位元(每外出道路段)。(為簡翠起見,忽略對 於節點自身之⑽不儲存位元的事實)。才目關位元處於第 -專級(自等級0計數),在該等級處節點之區⑴不同於目 標區之區1D。舉例而言,若全域等級處之節點之區ID等於 全域處之目標㈣’但該兩個區ID在等級W為不同的,、 則相關位元位置處於等級i,且其等於目標區ID。 等級處之未壓縮之位元向量串中的位元位置;此串針對 一可能的目標區1D含有一個位元。區重新映射表係用以將 此位置轉換成經壓縮位元向量争(在彼等級實際 的串)中之位置。 最精細」等 將四個等級作 且假設節點之 當界定了鄰居區時’則相關位元被確定在 級(在其中目標區為該節點之區之鄰居)處。 為貫例,假设目標區ID序列為(a, b,c,句, 150832.doc -113- 201211508 區ID序列為(e,f,g,h)。若(a,b,c, d)為(e,f,之鄰居(如 在鄰居清單區段中所定義),且(a,b)為(e)之鄰居,則相關 位元由(a,b,c,d)確定且位於等級2處,即含有作為鄰居之 (a,b,c,d)的(e, f, g)首碼之等級。更精確言之,相關位 元位置為等級2側檔案中作為區(e,f,g)之鄰居的(a,b,c,幻 之索引。在此狀況下,區ID之規則位元h(如先前段中所解 釋)為不相關的。再-次,此相關位元位置係相對於未壓 縮之位元向|串。解碼器使料4新映射表以將其轉換至 等級2處之經壓縮位元串中之位元位置。關於鄰居清單之 更多資訊含有於「增強之多等級圖分割之提案卟― for enhanced multi_levelgraphpartiti〇ning)」之文件中。 解碼位元向量位元 在給定目標區之固定集合的情況下,頁中之每一節點之 2元向量將由每外出道路段之—位元組成。若節點之道路 :二十數為零(亦即,節點為無資訊節點),則將把每一位元 °又疋成1,而對於彼節點不進一 目標區中之一者中,則你一/日進7解碼。右節點位於 ^ 項"甲,則位兀·向詈將盎入αγτ 1 .丄 』置將又為全部1 ;在此狀況 ’可能必須跳過經編碼之資料以便解碼後續節點之資 料0 若當前節點之位亓而旦并4 τ 里並非平凡地皆為1,則解碼器確 疋相闕位元位置之集合, ia ,, ^ ^ ^ 々叙早所解釋。每一位元位置係 相對於特定等級,亦即 位凡位於特定側檔案中。在每一 專級處,側檔案含有完全 要操取相關位元位置處之/縮位^串,但解碼器僅需 处之位疋。在解碼期間,讀取(跳過) I50832.doc 114· 201211508 不使用的資訊(但僅在其後為實 際上需要的資訊的情況 下)。否則,根本不讀取位元流之不使用的部分。 等級對相關位元位置之集合分組。將相關位置轉換 ㈣元串中之位置’而非解碼㈣縮位4且將其 解麼、%以f買取相關位置處之位元。# + ' A _ 右在某等級處存在相關 疋,則百先在適當時(解螞器記得其 側檔案中處理到多遠)跳過前置節點之次术級處之 Ο Ο 檔案中到達正被討論的節點之 :…當在給定側 董。對於每一外出道—,儲存—個位元;二= 相關位元位置之經解碼位元的邏輯或運算之結果。、本 點處之特定道路段之資訊以指定 :·即 始。其具有以下值中之-者: ^之*夫1符號開 • 7定此等級處之道路段之所有位元向量位元 不必解碼其他位元。)之存说。對於此道路段, •指定此等級處之道路段之所有以 此等級處之所有鄰居位元) 70為1(包括 手5虎。對於此道路段, 不必解碼其他位元。 •指定位元向量位元串被按區塊明確給出之符號。在下 文解釋按區塊對經壓縮位元向 路俨之仿_ A曰 里位兀串之解碼。將道 路奴之位兀向篁位元置於在整個 「歷史堆疊」t。 胃之、、爲碼期間建立的 •指定對歷史堆疊之帝引的2 Μ入士且之㈣的付说。在給定索引處 堆疊含有道路段之所要位元向量位元值。 史 150832.doc • JJ5- 201211508 視歷史堆疊之當前大小,使用用於解碼方法選擇器之 同霍夫曼樹。在側檔案之標頭t存在指定霍夫曼樹之數不 的限制值;當歷史堆疊之大小超過此值時,貝d重新使用目 次的霍夫曼樹。 上 右方法選擇器符號指定位元向量串應被明確地編碼,則 解碼器逐區塊地讀取經壓縮位元向量位元串。其收集此等 級處之相關位元位置(相對於經壓縮位元向量串)處之位= 值。對該等位元之值進行邏輯或運算。該邏輯或之中間 果:變成卜就可跳過此道路段之所有其他區塊中的剩: 位兀。用於解碼每一區塊之霍夫曼樹視該區塊中之位元之 數目而定。針對如指定於側檔案標頭中的規則區塊長度存 在一個霍夫曼樹。道路段之最後區塊可為較短的;視其大 小,將適當霍夫曼樹用於解碼。長度為一之區塊為僅一位 凡,將其直接讀取而無需霍夫曼解碼。 若區塊之數目為至少2,則白 .. 以自位兀向置產生之位元流含 有在該等區塊之霍夫曼粹 θ 天又付嬈之别的一額外位元。其值指定 了是否將整個經解碼之串 ^ 甲里解為貫際值的逐位元否定。 (此否定之目的為更好的霍夫曼壓縮 【圖式簡單說明】 圖1為可由導航裝置使用 ^ A J王5衣疋位糸統(GPS)之一例示 性部分的示意說明; 圖2為跨越—通信頻道而& 立固 、 、仏之伺服器與導航裝置的示 思圍; 圖3a為導航裳置的示意圖; 150832.doc •116- 201211508 圖3b為由圖3a之導航裳置使用之架構堆疊的示意表示; 圖4為導航裝置的透視圖; 圖5展示如由本發明之實施例產生的實例地圖之一部 分; 圖6展不圖5的地圖,其上展示了用於路徑選擇之節點; 圖7展示在處理之後的圖5之地圖; 圖8展示在一些實施例中節點如何被分配至圖了之地圖的 一實例; 圖9說明地圖如何可被分割成複數個巢式區之實例; 圖9a說明圖9之分割之增強; 圖10展示由本發明之實施例利用之位元向量的一實例集 合; 圖l〇a說明如何在網路之Dijkstra探索期間利用時間分析 (time profiled)之資訊; 圖11展示本發明之一實施例之檔案的實例檔案格式 圖12展示可如何編碼圖η之區再映射表及區1〇清單之實 施例; 圖13展示如圖3中所說明之最粗略巢式區的實例檔案格 式; 、 圖14展示除了最粗略巢式區之外的巢式區之實例檔案格 式; 圖1 5舉例說明編碼方案内之位元之聚結; 圖16(其包含圖16a及圖16b)舉例說明聚結位元之效應; 圖17亦舉例說明聚結位元之效應; 150832.doc -117- 201211508 圖1 8展示使用先前技術路徑選擇技術來醒目提示所考慮 的路線的地圖; 圖19展示藉由本發明之實施例來醒目提示所考慮的路線 的地圖; 圖2〇展示A*搜尋方法(先前技術)之實例; 圖21展示由本發明之至少一些實施例使用的對圖之修 改; ' 圖22展示概述本方法之步驟的流程圖; 圖23展示說明路線之可導航段上的預期速度之導航裝置 的顯示器; ~ 圖24展示說明在起點與目的地之間的—或多條路線之成 本概況的導航裝置之顯示器; 圖25展示說明在起點與目的地之間的—或多條路線之成 本概況的導航裝置之顯示器; 之顯示 器; 圖%展示說明針對特定旅程時間的在起點與目的地之間 时路線及用於改變旅程時間之控制項的導航裝置 間之後對圖26之顯示器 圖27展示在使用者已變更旅程時 的更新; 圖2 8展示在使用去_ p、& 之後對圖27之 定用者已進一步變更旅程時間 顯示器的更新; 圖29展示導航裝置 程時間; 圖3 〇展示說明在交 向使用者建議旅 之—系列顯示,其中 又郎點處兩個競香_ 地 J 口覜肀路線之成本概況的 150832.doc •118- 201211508 曲線圖;及 圖31展示自圖30中所展示之成本概況導出的上界成本概 況及下界成本概況。 【主要元件符號說明】 1 區 2 區 3 區 4 區 5 區 6 區 7 區 8 區 9 區 15 區 21 區 24 區 27 區 28 區 37 區 41 區 42 區 43 區 51 區 100 全 全球定位系統 Ο Ο 150832.doc -119- 201211508 102 衛星 104 地球 106 全球定位系統接收器 108 展頻全球定位系統衛星資料信號 150 伺服器 200 導航裝置 202 處理器 204 輸入裝置 206 顯示螢幕/整合式輸入及顯示裝置 208 輸出裝置 210 連接 212 輸出連接 214 記憶體系統 216 連接 218 輸入/輸出(I/O)埠 220 連接 222 外部輸入/輸出裝置 224 天線/接收器/内部GPS接收器 226 連接 228 埠 230 連接 250 死胡同 252 臂狀物/冗餘環形 254 吸盤 150832.doc -120- 201211508The bit vector of the node in the middle _^4 J隹目拾Q Calculate "this... is a bit string of all bits 1. This 荨 查 δ δ δ function is used in the best of the road ridge green search brother According to the side standard format, the bit vector of the given node is decoded according to the + half-filled right-hand step. 150832.doc -110. 201211508 In the per-side file, the information of the area and the bit vector is organized into so-called ' The number of nodes of the page is a fixed power of 2 (for example, 16), and is the same for each side _ and outer j file in the side file set. This means that for a given . The bit shift is used to calculate the page index of the bit vector page. The information of the point is stored continuously by the node ID. • Find the page offset of the given node for each side, prepare a hundred + a - Λ In the header, ί is stored in the side of the 被 eight is used to multiply the page by the average size and the nearest two is the byte offset. The correction is stored in the index by page. In the table of indexes. When this table is stored in a separate section of the side slot, look for the correction in the table and add the correction to the approximation. The page offset page thus gives the position of the page in the side file. Decoding page cache When the first query page is decoded, the decoding (relative to the bit γ of the node in the fixed page) is fast. ° ± The self-deprecating-page query node's Bellow Temple' can use the cached data without any side-slot file. =Decoded bit The special tag bit in the vector bit string is used to remember Whether the node is a no-information node. - The page number specifies the same area ID for each page in the so-called page number bit. The page number contains - only the element for each level, and the level = the level. The beginning of the page is stored as a common Hoff 150832.doc -111- 201211508 Decoded outbound road segment count as mentioned above 'Each page contains a fixed number of points 鍅 six from a point of the tribute. The thrift is stored in the header of the parent side file.— (or for level 0, + I—the page begins after the page number), which lists the number of road segments out of the page t. Whenever the road segment is out This means that the number of shares of the corresponding node is not stored at all. In the temporary array. When the page is known, the decoding area is given by the zone segment column after the road segment counting section, and there is one _ per level. The specific equal = zone 1D sequence corresponds to the side file. m is stored in the zone. When all nodes of the unfinished node have stored information on the nodes at all levels (ie, zeros), the 'supplement of the zone's % pills' section is counted as beta. Read the zone ID sequence of the brother-node of the road segment. If the given level is greater than the order level, the new female r ", the page of the page specifies that all the zone IDs are the same 'is all at the level The section is the same (four). Otherwise, the reading has a positive road. At the end of the process, the solution of the solution = point (where the sequence can be a null decoding bit vector to find the set of relevant bit positions for a given node and the target area, the special - leave this The value of the bit vector bit of the road segment of the point. The above target (4), there will be a starting or a series of operations. For each I50832.doc -112- 201211508 one node, the decoder side, - 彳舁A set of related bit positions. For a parent-out road segment at the node, such as - the relevant position is the same as the set of positions. It depends only on the set of & and the target area of the node 2. If there is only one target area , then there will be only one relevant bit position at a level; in other words, for this node, the information stored at other levels can be ignored. In the case of more than one target area, one; ;: Nissin A - II The position of the fl position can be coincident, so it is always possible to store at most the position of the relevant target area - 楛 & In the following, it will be described how the decoder determines the position of the associated bit of the _ sleeve g 4Φ fields. For more than one target area, the relevant bit positions are found in the same way and the related bit positions are combined into a set. When the neighbor zone is not defined, there is one bit vector bit (per outgoing road segment) for each target zone at each level. (For the sake of Jian Cui, ignore the fact that (10) does not store bits for the node itself). The target bit is at the first-level (counting from level 0), where the node (1) is different from the area 1D of the target area. For example, if the zone ID of the node at the global level is equal to the target (four)' at the global domain but the two zone IDs are different at level W, then the relevant bit location is at level i and is equal to the target zone ID. The bit position in the uncompressed bit vector string at the level; this string contains one bit for a possible target area 1D. The zone remapping table is used to convert this location into a location in the compressed bit vector (in the actual string of the class). The finest" and so on, and the assumption that the node defines the neighboring zone, then the relevant bit is determined at the level (in the neighborhood where the target zone is the zone of the node). For the example, suppose the target area ID sequence is (a, b, c, sentence, 150832.doc -113- 201211508 area ID sequence is (e, f, g, h). If (a, b, c, d) For (e, f, the neighbor (as defined in the neighbor list section), and (a, b) is the neighbor of (e), the relevant bit is determined by (a, b, c, d) and located At level 2, that is, the level of the (e, f, g) first code as the neighbor's (a, b, c, d). More precisely, the relevant bit position is the area in the level 2 side file (e , f, g) neighbor's (a, b, c, magic index. In this case, the rule bit h of the zone ID (as explained in the previous paragraph) is irrelevant. Again-time, this correlation The bit position is relative to the uncompressed bit direction. The decoder causes the material 4 to be newly mapped to convert it to the bit position in the compressed bit string at level 2. More information about the neighbor list Contained in the file "Promotion of enhanced multi-level graph partitioning - for enhanced multi_levelgraphpartiti〇ning). Decoding bit vector bits in the case of a fixed set of target regions, each section of the page The 2-yuan vector of the point will be composed of the bits of each outgoing road segment. If the road of the node: twenty zero is zero (that is, the node is no information node), each bit will be reduced to 1, For one of the target areas, if you do not enter one of the target areas, you will be able to decode 7/day. The right node is located in the ^ item "A, then the position 兀·向向盎 into αγτ 1 .丄』 will be all 1 ; In this case 'may have to skip the encoded data in order to decode the data of the subsequent nodes. 0 If the current node is 亓 and 4 τ is not trivial, then the decoder confirms the set of corresponding bit positions, ia , ^ ^ ^ 々 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早 早The bit/string is reduced, but the decoder only needs to be in the 疋. During decoding, the information that is not used by I50832.doc 114· 201211508 is read (skip only), but only after it is actually needed. In case)), otherwise, the unused portion of the bit stream is not read at all. The level is grouped into a set of related bit positions. The relevant position is converted into a position in the (four) metastring instead of decoding (four) abbreviated 4 and solving it, and % is buying the bit at the relevant position with f. # + ' A _ If there is a correlation 右 at a certain level on the right, then the first time (when the ripper remembers how far it is processed in the side file), skip the sequel of the predecessor node Ο 到达 reach the node being discussed in the file It: when on a given side, for each out-of-way—stores one bit; two = the result of a logical OR operation of the decoded bits of the associated bit position. Information on the specific road segment at this point is specified: · Start. It has the following values: ^^*1 symbol open • 7 all bit vector bits of the road segment at this level It is not necessary to decode other bits. ) said. For this road segment, • all the neighboring bits at this level are assigned to all the neighboring bits at this level. 70 is 1 (including the hand 5 tiger. For this road segment, it is not necessary to decode other bits. • Specify the bit vector The bit string is explicitly given by the block. The decoding of the compressed bit to the _ 曰 兀 按 。 。 。 。 。 。 。 。 。 。 。 。 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码 解码In the whole "history stacking" t. Stomach, which is established during the code period, • specifies the 2 Μ 且 且 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史 历史Meta-vector bit value. History 150832.doc • JJ5- 201211508 Depending on the current size of the history stack, use the same Huffman tree for the decoding method selector. There is a specified number of Huffman trees in the header t of the side file. No limit value; when the size of the history stack exceeds this value, Bayer re-uses the Huffman tree of the directory. The upper right method selector symbol specifies that the bit vector string should be explicitly encoded, then the decoder is block by block Read the compressed bit vector bit string. Collect the bit = value at the relevant bit position (relative to the compressed bit vector string) at this level. Perform a logical OR on the value of the bit. The logical or intermediate result: you can skip The remainder of all other blocks in this road segment: Bit 兀. The Huffman tree used to decode each block depends on the number of bits in the block. For the specified in the side file header There is a Huffman tree in the length of the rule block. The last block of the road segment can be shorter; depending on its size, the appropriate Huffman tree is used for decoding. The block of length one is only one. It reads directly without Huffman decoding. If the number of blocks is at least 2, then white. The bit stream generated by the self-position 兀 is contained in the Hoffman θ days of the blocks. An extra bit of the other. The value specifies whether the entire decoded string is resolved as a bitwise negation of the continuous value. (The purpose of this negation is better Huffman compression [pattern Brief Description] Figure 1 is an illustrative part of a navigation device that can be used by the AJ King 5 Garment System (GPS). Figure 2 is a schematic diagram of a server and navigation device that spans the communication channel and is set up; Figure 3a is a schematic diagram of the navigation skirt; 150832.doc •116-201211508 Figure 3b is a diagram Figure 3 is a perspective view of a navigation device; Figure 5 shows a portion of an example map generated by an embodiment of the present invention; Figure 6 shows a map of Figure 5, shown thereon Figure 7 shows a map of Figure 5 after processing; Figure 8 shows an example of how a node is assigned to a map in some embodiments; Figure 9 illustrates how a map can be segmented into An example of a plurality of nested regions; Figure 9a illustrates an enhancement of the partitioning of Figure 9; Figure 10 illustrates an example set of bit vectors utilized by embodiments of the present invention; Figure 1a illustrates how to utilize during Dijkstra exploration of the network Information on time profiled; FIG. 11 shows an example file format of a file according to an embodiment of the present invention. FIG. 12 shows an embodiment of how a region remapping table and a region list can be encoded; FIG. 3 shows an example file format of the coarsest nested area as illustrated in FIG. 3; and FIG. 14 shows an example file format of the nested area except the coarsest nested area; FIG. Figure 6 (which includes Figures 16a and 16b) illustrates the effect of coalescing bits; Figure 17 also illustrates the effect of coalescing bits; 150832.doc -117- 201211508 Figure 1 8 shows the use of previous The technical path selection technique is to highlight the map of the route in question; FIG. 19 shows a map of the route considered by the embodiment of the present invention to highlight the prompt; FIG. 2A shows an example of the A* search method (prior art); Modifications to the figures used by at least some embodiments of the present invention are shown; 'Figure 22 shows a flow chart summarizing the steps of the method; Figure 23 shows a display of the navigation device illustrating the expected speed on the navigable section of the route; ~ Figure 24 Displaying a display of navigation devices that illustrate the cost profile of the route between the start point and the destination; Figure 25 shows the cost of the route between the start point and the destination - or multiple routes Display of the navigation device; display; Figure % shows the navigation between the start point and the destination for the specific journey time and the control device for changing the travel time. The user has changed the update at the time of the journey; Figure 28 shows the update of the travel time display for the subscriber of Figure 27 after using _p, &; Figure 29 shows the navigation device time; Figure 3 The description is given to the user-recommended travel-series display, where the two points are at the cost of the two scented _ _ J J 眺肀 route cost profile 150832.doc • 118- 201211508 graph; and Figure 31 shows from Figure 30 The upper bound cost profile derived from the cost profile presented in the example and the lower bound cost profile. [Main component symbol description] 1 Zone 2 Zone 3 Zone 4 Zone 5 Zone 6 Zone 7 Zone 8 Zone 9 Zone 15 Zone 21 District 24 District 27 District 28 District 37 District 41 District 42 District 43 District 51 District 100 Global Positioning SystemΟ Ο 150832.doc -119- 201211508 102 Satellite 104 Earth 106 Global Positioning System Receiver 108 Spread Spectrum Global Positioning System Satellite Data Signal 150 Server 200 Navigation Device 202 Processor 204 Input Device 206 Display Screen/Integrated Input and Display Device 208 Output Device 210 Connection 212 Output Connection 214 Memory System 216 Connection 218 Input/Output (I/O) 埠 220 Connection 222 External I/O Device 224 Antenna/Receiver/Internal GPS Receiver 226 Connection 228 埠 230 Connection 250 Dead End 252 Arm / redundant ring 254 suction cup 150832.doc -120- 201211508

280 功能硬體組件 282 基本輸入/輸出糸統 284 作業系統 286 應用程式軟體 288 視圖產生模組 300 節點 302 節點 304a 道路段 304b 道路段 304c 道路段 304d 道路段 308 節點 310 道路 400 節點 600 區 602 604 區 606 區 608 區 700 最左側攔 702 弟二棚 704 第三攔 750 節點 751 圖 -121 - 150832.doc 201211508 752 成本函數 754 點 756 點 800 地圖標頭 802 霍夫曼樹 804 區計數/區重新映射表 806 區鄰居/區ID清單 808 區ID重新映射表 810 位元向量頁索引/表 812 位元向量 900 陣列 1300 垂直條狀區 1600 地圖 1602 始發節點 1604 目的地節點 1606 選定路線 1650 地圖 1652 點 1800 道路段BD 1801 道路段BC 1802 虛線道路段 1804 虛線道路段 2000 時間列 2001 左箭頭 150832.doc -]22· 201211508 2002 右箭頭 2003 虛線路線 2004 點線路線 2010 方塊 2015 備註 Cl 成本概況 C2 成本概況 LB 下界分佈 UB 上界分佈 ❾ 150832.doc -123 -280 Functional Hardware Component 282 Basic Input/Output System 284 Operating System 286 Application Software 288 View Generation Module 300 Node 302 Node 304a Road Segment 304b Road Segment 304c Road Segment 304d Road Segment 308 Node 310 Road 400 Node 600 Region 602 604 District 606 District 608 District 700 Leftmost Barrier 702 Brother II Shed 704 Third Barrier 750 Node 751 Figure-121 - 150832.doc 201211508 752 Cost Function 754 Point 756 Point 800 Ground Icon Head 802 Hoffman Tree 804 Area Count/Zone Re Mapping Table 806 Area Neighbor/Zone ID List 808 Area ID Remapping Table 810 Bit Vector Page Index/Table 812 Bit Vector 900 Array 1300 Vertical Strip Area 1600 Map 1602 Originating Node 1604 Destination Node 1606 Selected Route 1650 Map 1652 Point 1800 Road segment BD 1801 Road segment BC 1802 Dotted road segment 1804 Dotted road segment 2000 Time column 2001 Left arrow 150832.doc -]22· 201211508 2002 Right arrow 2003 Dotted route 2004 Point line 2010 Block 2015 Remarks Cl Cost profile C2 Cost Profile LB lower bound distribution on UB Distribution ❾ 150832.doc -123 -

Claims (1)

201211508 七、申請專利範圍:201211508 VII. Patent application scope: 2.2. 4. 一種使用包含複數個可導航路徑之地圖資料確定一路線 之方法,該地圖資料被劃分成複數個區,該方法包含使 用至少一處理設備以:接收該地圖資料上之一起點及一 目的地以及一旅程時間,使用該地圖資料及識別該地圖 資料之區之間的最小成本路徑之最小成本資料確定自該 起點至該目的地之-路線,其特徵在於,在不同時間在 該等區中的一對區之間存在不同最小成本路徑的情況 下,該最小成本資料識別該對區之間的一個以上最小成 本路徑,且確路線包含自包含該起點及該目的地的 該對區之該等最小成本路徑巾識财該旅程時間具有一 最低成本的該最小成本路徑。 如請求項1之方法,其 據該最小成本資料識別 針對自該旅程時間導出 識別之最小成本路徑實 間處的該最小成本路徑 甲確定該路線包含獨立於時間根 對區之間的最小成本路徑,且 的一或多個相關時間而對該等經 行一成本分析以確定在該旅程時 〇. 戈口 項1或請求項2之方法,其令該最小成 I—最小成本路徑識別該路徑為該最小成本路徑的-呈古 且確定路線包含根據該最小成本資料選擇 對應於自4旅程時間導出的—或多個相關時間 參考時間之最小成本路徑。 =未項1或請求項2之方法,其中該地圖資料包含識 時間在料路徑之可導航段上的職速度之速 150832.doc 201211508 寺兄、兄資料,且至少部分地根據構成一路徑之該等可導航 段之該等速度概況而確定該路徑之成本。 5·如請求項4之方法,其包含藉由根據形成-共同起點與 目的地之間的一或多條路線之可導航段之每一速度概況 的夕個值確定成本而確定該一或多條路線的一成本概 況。 士明求項5之方法,其包含接收一概況請求以針對所定 義之準則而確疋遠起點與該目的地之間的—最佳旅程時 間且作為回應,確定該成本概況且將結果顯示給該使 用者。 1求項6之方法,其包含使該處理設備根據該成本概 况針對该所定義準則而確定一最佳旅程時間,且結果之 °亥顯不為該最佳旅程時間之一顯示。 8 ·如請求項6 f、、土 、之方法,其中結果之該顯示為該成本概況之 一顯示。 9·如°月求項5之方法,其中該成本概況請求包括一時段, 對路線之搜尋被限於該時段内。 1 〇 ·如請求項 夕古、土 ^ 之方法,其包含接收對在一特定旅程時間在 點與該目的地之間的一路線之一請求,確定包括彼 、夂旅程時間的-時間窗之-成本概況,且根據該成本 既况確疋在彼時間窗内之另一時間處該路線之該成本是 :於針對該特定時間之該成本,且若該成本較小,則 :顯示向該使用者通知該另一旅程時間之一訊息。 叫求項1或請求項2之方法,其包含經由一使用者介面 150832.doc 201211508 自一使用者接收對該旅程時間之—選擇,且使_顯示器 顯不展示該所確定之路線的該地圖資料之一影像。 12.如請求項11之方法,直句合估卢#从扣l 一 ,、3使侍该使用者能夠在檢視展 不該所確定路線的該地圖資料之該影像的同時改變該旅 程時間,且回應於該旅料間的_改變,以針對該改變 之旅程時間的一新路線之一影像更新該顯示器。 α如請求項12之方法,其包含使得顯示—表示該旅程時間 Ο 的滑桿’且回應於使用者與該滑桿互動“該新路線之 該影像更新該顯示器。 14. 一種儲存有指令之資料載體,該等指令在由一處理設備 執行時使該處理設備執行如請求項1至13中任一項之一 方法。 ' 15.-種資料載體’其儲存有··包含複數個可導航路徑之地 圖資料’該地圖資料被劃分成複數個區;及識別在不同 時間在該地圖資料之該等區之間的最小成本路徑之最小 成本資料。 16· -種包含記憶體及處理設備之電腦裝置,該記憶體儲存 有.包含複數個可導航路徑之地圖資料,該地圖資料被 劃分成複數個區,識別該地圖資料之該等區之間的最小 成本路徑之最小成本資料;該處理設備經配置以接收該 地圖資料上的一起點及一目的地以及一旅程時間且使用 該地圖資料及該最小成本資料確定自該起點至該目的地 點的一路線,其特徵在於,在不同時間在該等區中的一 對區之間存在不同最小成本路徑的情況下,該最小成本 150832.doc 201211508 資料識別該對區之間的一個以上最小成本路徑,且確定 一路線包含當考慮該旅程時間時根據該最小成本資料識 別包含該起點及該目的地的區之間的該路線之一最小成 本路徑。 1 7. —種導航裝置’其包含一定位系統、一顯示器、一使用 者介面及一如請求項16之電腦裝置,其中處理設備經配 置以經由在該使用者介面上之輸入而導出起點及目的地 且將確定之結果顯示於該顯示器上。 18_ —種使用地圖資料、最小成本資料及速度概況確定一路 線之方法,該地圖資料包含表示該地圖資料之可導航路 徑之段的複數個可導航段;該最小成本資料識別該地圖 貧料之區之間的最小成本路徑,在於不同時間在該等區 中的一對區之間存在不同最小成本路徑的情況下,該最 小成本資料識別該對區之間的一個以上最小成本路徑; 該等可導航段之該等速度概況識別該等可導航段上之速 度如何隨著時間的推移而變化,該方法包含使用至少一 處理設備以:搜尋該地圖資料上之自一起點至一目的地 的「或多條路線,該搜尋包含確定連接至一節點的一組 可導航段中之-或多個可導航段是否被該最小成本資料 為包含該起點及該目的地的區之一最小成本路徑之 邛分’且在該組之該等可導航段中之一或多個可導 ^識別為-最小成本路徑的部分的情況下,自該組餘 广別為一最小成本路徑的部分之該-或多個可導航 I且根㈣等所探索的可導航段之該等速度而確 150832.doc 201211508 疋隨著時間的過去該一或多條路線之一成本概況。 19. 20. Ο ο 21. 一種儲存有指令之資料載體,該等指令在由一處理設備 執行時使該處理設備執行如請求項丨8之一方法。 一種包含記憶體及處理設備之電腦裝置,該記憶體儲存 有地圖資料,該地圖資料包含表示該地圖資料之可導航 路徑之段的複數個可導航段,及該等可導航段之速度概 況,該等速度概況識別在該等可導航段上之速度如何隨 著時間的推移而變化;該處理設備經配置以搜尋該地圖 —貝料上之自一起點至一目的地的一或多條路線該搜尋 包含確定連接至一節點的一組可導航段中之一或多個可 ‘航又疋否被S亥隶小成本資料識別為包含該起點及該目 的地的區之一最小成本路徑之部分’且在該組之該等可 導航段中之一或多個可導航段經識別為—最小成本路徑 的部分的情況下,自該組僅探索經識別為一最小成本路 徑的部分之該一或多個可導航段,且根據該等所探索的 可導航段之該等速度概況而確定隨著時間的過去該一或 多條路線之一成本概況。 種使用地圖資料確定並顯示一路線之方法,該地圖資 料包含表示該地圖資料之可導航路徑之段的複數個可導 航段及該等可導航段之速度概況,該方法包含回應於在 使用者介面上之輸入而確定沿著該等可導航段之一路 線’根據該等相關聯之速度概況而確定沿著該路線之可 導航段之一預期速度,且顯示該所確定之路線以及對在 該路線之該等可導航段中之至少一些可導航段上的該預 150832.doc 201211508 22. 23. 24. 25. 26. 期速度的一指示。 一種儲存有指令之資料载體,該等指令在由處理設備執 行日^使該處理設備貫行如請求項2丨之方法。 -種電腦裝置’其包含_顯示器、—使用者介面、記憶 體及處理設備,該記憶體儲存有地圖資料,該地圖資料 包含表示該地圖資料之可導航路徑之段的複數個可導航 k及4等可導航段之速度概況,該等速度概況表示在不 同時間沿著彼段之一預測行進速度,該處理設備經配置 以回應於在該使用者介面上的輸入而確定沿著該等可導 航#又之一路線,根據該等相關聯之速度概況而確定沿著 忒路線之可導航段之—預期速纟’且使該顯示器顯示該 所確定之路線以及對在該路線之該等可導航段中之至少 一些可導航段上的該預期速度的一指示。 如μ求項23之電腦裝置’其中該處理器經配置以使該顯 不益顯不一旅程時間,該使用者可在檢視該路線的同時 經由與該使用者介面互動而改變該旅程時間,其中回應 於對該旅程時間的改變’該處理器確定針對新的旅程: 間的沿著該路線之可導航段的經更新之預期速度,且更 新邊路線之該顯示以指示該等經更新之預期速度。 1請^24之電腦裝置,其中該旅程時間係由該顯示器 的0杯私不,該使用者可移動該滑桿以調整該旅程 時間。 如明求項24至25中任一項之電腦裝置’其中該預期速度 示為該等可導航段之彩色編碼。 150832.doc4. A method for determining a route using map data comprising a plurality of navigable paths, the map material being divided into a plurality of zones, the method comprising using at least one processing device to: receive a starting point and a purpose on the map data And a journey time, using the map data and the minimum cost data of the least cost path between the areas identifying the map data to determine the route from the origin to the destination, characterized in that the zones are at different times Where there is a different minimum cost path between a pair of zones, the minimum cost profile identifies more than one least cost path between the pair of zones, and the route comprises the zone from which the origin and the destination are included The minimum cost path identifies the minimum cost path for the journey time with a minimum cost. The method of claim 1, wherein the minimum cost path is used to identify the least cost path for deriving the identified minimum cost path from the journey time, and determining that the route includes a minimum cost path independent of the time root pair And one or more relevant times and a cost analysis of the operations to determine a method of selecting a destination or a claim 2 at the time of the journey, which causes the minimum I-minimum cost path to identify the path The -costed and determined route for the least cost path includes selecting a minimum cost path corresponding to the derived from the 4 journey time - or a plurality of associated time reference times based on the minimum cost profile. The method of claim 1 or claim 2, wherein the map data includes a speed of the time of the time of the navigation on the navigable section of the material path 150832.doc 201211508, and at least partly according to the path The speed profiles of the navigable segments determine the cost of the path. 5. The method of claim 4, comprising determining the one or more by determining a cost based on a value of each of the speed profiles of the navigable segments forming one or more routes between the common starting point and the destination A cost overview of the route. The method of claim 5, comprising receiving an overview request to determine a best journey time between the far start point and the destination for the defined criteria and in response, determining the cost profile and displaying the result to The user. The method of claim 6, comprising causing the processing device to determine an optimal journey time for the defined criteria based on the cost profile, and wherein the result is not displayed for one of the optimal journey times. 8 • The method of claim 6 f, , earth, and the result of which is shown as a display of the cost profile. 9. The method of claim 5, wherein the cost profile request includes a time period, and searching for the route is limited to the time period. 1 〇 · A method of requesting an item, an item, comprising receiving a request for one of a route between a point and a destination at a particular journey time, determining a time window including a journey time of the other party a cost profile, and depending on the cost, the cost of the route at another time within the time window is: at the cost for the particular time, and if the cost is small, then: The user notifies the message of one of the other travel times. The method of claim 1 or claim 2, comprising receiving a selection of the time of the journey from a user via a user interface 150832.doc 201211508, and causing the display to display the map of the determined route One of the images. 12. The method of claim 11, the direct sentence evaluation, the deduction of the travel time, the user is able to change the travel time while viewing the image of the map material that is not determined by the exhibition. And in response to the change in the travel, the display is updated with an image of a new route for the changed travel time. </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> </ RTI> <RTIgt; A data carrier that, when executed by a processing device, causes the processing device to perform one of the methods of any one of claims 1 to 13. ' 15. A type of data carrier' that stores a plurality of navigable Map data of the route 'The map data is divided into a plurality of zones; and the minimum cost data identifying the least cost path between the zones of the map data at different times. 16· - Contains memory and processing equipment a computer device, the memory storing map data comprising a plurality of navigable paths, the map data being divided into a plurality of regions, and identifying a minimum cost data of a minimum cost path between the regions of the map data; The device is configured to receive a point on the map material and a destination and a journey time and use the map data and the minimum cost data to determine from a route to the destination point, characterized in that, in the case where there are different minimum cost paths between a pair of zones in the zones at different times, the minimum cost 150832.doc 201211508 data identifies the pair of zones One or more least cost paths, and determining a route includes identifying a minimum cost path of the route between the zone containing the origin and the destination based on the minimum cost profile when considering the journey time. 1 7. Navigation The device includes a positioning system, a display, a user interface, and a computer device as claimed in claim 16, wherein the processing device is configured to derive a starting point and a destination via input on the user interface and will determine The results are displayed on the display. 18_A method for determining a route using map data, minimum cost data, and a speed profile, the map material including a plurality of navigable segments representing segments of the navigable path of the map data; The data identifies the least cost path between the areas where the map is poor, and the time is in the areas at different times. Where there are different minimum cost paths between the zones, the minimum cost profile identifies more than one least cost path between the zones; and the velocity profiles of the navigable segments identify the speed on the navigable segments Varying over time, the method includes using at least one processing device to: search for "or multiple routes" from the point of view to a destination on the map data, the search comprising determining a set of connections to a node Whether the one or more navigable segments in the navigation segment are segmented by the minimum cost data for one of the minimum cost paths of the region containing the origin and the destination and one of the navigable segments of the group or In the case where a plurality of parts that can be identified as - the least cost path, the part of the group that is the part of a minimum cost path, or the plurality of navigable I and the root (four), etc. The speed is indeed 150832.doc 201211508 成本 One of the cost profiles of one or more routes over time. 19. 20. ο ο 21. A data carrier storing instructions that, when executed by a processing device, cause the processing device to perform a method as in claim 18. A computer device comprising a memory and a processing device, the memory storing map data, the map data comprising a plurality of navigable segments representing segments of the navigable path of the map data, and a speed profile of the navigable segments, The speed profiles identify how the speeds on the navigable segments change over time; the processing device is configured to search the map - one or more routes from the point of interest to a destination The search includes determining that one or more of the set of navigable segments connected to a node can be identified as one of the minimum cost paths of the zone containing the origin and the destination. Partially, and in the case where one or more of the navigable segments of the group are identified as part of the least cost path, only the portion identified as a least cost path is explored from the group One or more navigable segments, and determining one of the one or more routes cost profiles over time based on the velocity profiles of the explored navigable segments. A method for determining and displaying a route using map data, the map material comprising a plurality of navigable segments representing segments of the navigable path of the map material and a speed profile of the navigable segments, the method comprising responding to the user Determining, along the input of the interface, a route along one of the navigable segments, determining an expected speed of one of the navigable segments along the route based on the associated velocity profiles, and displaying the determined route and the pair The pre-150832.doc 201211508 22. 23. 24. 25. 26. An indication of the speed of the period on at least some of the navigable segments of the route. A data carrier storing instructions that, when executed by a processing device, cause the processing device to perform a method as claimed. a computer device comprising: a display, a user interface, a memory and a processing device, the memory storing map data, the map data comprising a plurality of navigable k and a segment of the navigable path of the map data a velocity profile of 4 voyagable segments, the velocity profiles representing predicted travel speeds along one of the segments at different times, the processing device being configured to determine along the input in the user interface to determine along the Navigating another route, determining an expected speed of the navigable segment along the route based on the associated speed profiles and causing the display to display the determined route and the pair of routes on the route An indication of the expected speed on at least some of the navigable segments of the navigation segment. If the computer is configured to cause the display time to be different, the user can change the journey time by interacting with the user interface while viewing the route. Responding to a change to the time of the journey' the processor determines an updated expected speed for the navigable segment along the route for the new journey: and updates the display of the edge route to indicate the updated Expected speed. 1 Please use the computer device of ^24, wherein the journey time is private from the 0 cup of the display, and the user can move the slider to adjust the travel time. The computer device of any one of clauses 24 to 25 wherein the expected speed is shown as a color code of the navigable segments. 150832.doc
TW99131282A 2010-09-15 2010-09-15 Navigation devices and methods carried out thereon TW201211508A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW99131282A TW201211508A (en) 2010-09-15 2010-09-15 Navigation devices and methods carried out thereon

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW99131282A TW201211508A (en) 2010-09-15 2010-09-15 Navigation devices and methods carried out thereon

Publications (1)

Publication Number Publication Date
TW201211508A true TW201211508A (en) 2012-03-16

Family

ID=46764325

Family Applications (1)

Application Number Title Priority Date Filing Date
TW99131282A TW201211508A (en) 2010-09-15 2010-09-15 Navigation devices and methods carried out thereon

Country Status (1)

Country Link
TW (1) TW201211508A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI676812B (en) * 2019-03-15 2019-11-11 東元電機股份有限公司 Two-stage navigating system
TWI736048B (en) * 2019-12-05 2021-08-11 中華電信股份有限公司 Electronic device and method for calculating estimated travel time

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI676812B (en) * 2019-03-15 2019-11-11 東元電機股份有限公司 Two-stage navigating system
TWI736048B (en) * 2019-12-05 2021-08-11 中華電信股份有限公司 Electronic device and method for calculating estimated travel time

Similar Documents

Publication Publication Date Title
CN102483333B (en) Use the guider with the map datum of route search acceleration data
CN102947676B (en) Guider and the method carried out thereon
CN108829852B (en) Personalized tour route recommendation method
US9835466B2 (en) Navigation devices
US9195953B2 (en) System and method for the calculation and use of travel times in search and other applications
US9068837B2 (en) Method of operating a navigation system
WO2016107417A1 (en) Method and device for exploiting travel route on basis of tourist destination area
CN104537029B (en) Inquiry processing method and device
KR20010087397A (en) Data structure of digital map file
KR20110025799A (en) A method of resolving a location from encoded data representative thereof
KR20160029330A (en) System and method for recommending travel destination based on user characteristics and tourist destination characteristics
CN104881472B (en) A kind of travelling route sight spot combined recommendation method based on network data collection
CN106323313A (en) A mobile device and method and system for transmission of data thereto
TW201405451A (en) Travel route recommendation system and method thereof
JP2001056823A (en) Data structure of digital map file
CN106708837B (en) Interest point searching method and device
CN108776666A (en) It is a kind of to fall to arrange spatial key word querying method and device with Trie based on keyword
TW201211508A (en) Navigation devices and methods carried out thereon
CN110532464A (en) A kind of tourism recommended method based on more tourism context modelings
Dibbelt Engineering algorithms for route planning in multimodal transportation networks
TW201211509A (en) Navigation devices
CN101894302A (en) Path generation method
CN103065272A (en) Travel itinerary integration method
Hsieh et al. Composing traveling paths from location-based services
CN113819916B (en) Travel route planning method based on cultural genetic algorithm