管理用于基于網(wǎng)絡(luò)的定位系統(tǒng)的位置數(shù)據(jù)庫(kù)的制作方法
【專(zhuān)利摘要】本公開(kāi)涉及管理用于基于網(wǎng)絡(luò)的定位系統(tǒng)的位置數(shù)據(jù)庫(kù)。描述了用于管理位置數(shù)據(jù)庫(kù)的方法、程序產(chǎn)品和系統(tǒng)。服務(wù)器可以從位于無(wú)線通信網(wǎng)絡(luò)的接入點(diǎn)的通信范圍內(nèi)的知道位置的移動(dòng)設(shè)備(例如,能夠使用GPS的設(shè)備)接收位置信息。服務(wù)器可以為每個(gè)接入點(diǎn)利用接收到的位置計(jì)算平均地理位置?;谄骄乩砦恢?,服務(wù)器可以將接入點(diǎn)分配給地理網(wǎng)格的單元。服務(wù)器可以基于接收的數(shù)據(jù)和接入點(diǎn)的流行度、穩(wěn)定性、壽命和新鮮度,對(duì)每個(gè)單元中的接入點(diǎn)進(jìn)行過(guò)濾。當(dāng)?shù)诙苿?dòng)設(shè)備連接到單元中的接入點(diǎn)時(shí),可以基于該單元和鄰近單元中的接入點(diǎn)的位置確定第二移動(dòng)設(shè)備的位置。
【專(zhuān)利說(shuō)明】管理用于基于網(wǎng)絡(luò)的定位系統(tǒng)的位置數(shù)據(jù)庫(kù)
[0001] 本申請(qǐng)是申請(qǐng)日為2010年8月25日、申請(qǐng)?zhí)枮?01080001301. 6、名稱(chēng)為"管理用 于基于網(wǎng)絡(luò)的定位系統(tǒng)的位置數(shù)據(jù)庫(kù)"的發(fā)明專(zhuān)利申請(qǐng)的分案申請(qǐng)。
【技術(shù)領(lǐng)域】
[0002] 本公開(kāi)一般地涉及為移動(dòng)設(shè)備確定地理位置。
【背景技術(shù)】
[0003] 無(wú)線通信網(wǎng)絡(luò)可以采用各種技術(shù),以便設(shè)備無(wú)線地通信。例如,無(wú)線局域網(wǎng)(WLAN) 可以包括使用無(wú)線電波而不是導(dǎo)線在網(wǎng)絡(luò)的節(jié)點(diǎn)(例如,設(shè)備)之間進(jìn)行通信的局域網(wǎng) (例如,覆蓋相對(duì)小的物理區(qū)域的計(jì)算機(jī)網(wǎng)絡(luò),這樣的物理區(qū)域例如家庭、辦公室、或一小群 建筑物,諸如學(xué)校)。WLAN技術(shù)的某些例子包括WiFi,其可以包括基于任何電氣和電子工程 師協(xié)會(huì)(IEEE) 802. 11標(biāo)準(zhǔn)的任何WLAN產(chǎn)品。
[0004] 發(fā)送方和接收方之間的無(wú)線連接可以采用射頻(RF)技術(shù),S卩,采用與無(wú)線電波傳 播相關(guān)聯(lián)的電磁頻譜中的頻率。WiFi中使用的某些示例性無(wú)線電頻率是2. 5吉赫茲(GHz) 或5GHz。當(dāng)RF電流被提供給天線時(shí),可以產(chǎn)生電磁場(chǎng)。該電磁場(chǎng)可以在空中傳播。一種 無(wú)線通信網(wǎng)絡(luò)的組件可以是接入點(diǎn)(AP)。接入點(diǎn)可以允許無(wú)線移動(dòng)設(shè)備與有線網(wǎng)絡(luò)通信。 接入點(diǎn)的一種功能可以是廣播可以由具有無(wú)線適配器的計(jì)算機(jī)或無(wú)線移動(dòng)設(shè)備檢測(cè)和"收 聽(tīng)"到的無(wú)線信號(hào)。
[0005] WiFi網(wǎng)絡(luò)的接入點(diǎn)可以覆蓋某個(gè)地理區(qū)域,該地理區(qū)域由接入點(diǎn)發(fā)送和接收的信 號(hào)的強(qiáng)度和該地理區(qū)域的物理特性確定。數(shù)量可變的移動(dòng)設(shè)備可以位于接入點(diǎn)的通信范圍 內(nèi)。一個(gè)移動(dòng)設(shè)備可以同時(shí)位于多個(gè)接入點(diǎn)的通信范圍內(nèi)。如果接入點(diǎn)的位置是已知的, 通過(guò)基于所接收的來(lái)自接入點(diǎn)的信號(hào)的強(qiáng)度對(duì)移動(dòng)設(shè)備的位置進(jìn)行三角測(cè)量,移動(dòng)設(shè)備有 時(shí)可以利用該移動(dòng)設(shè)備能夠與之通信的接入點(diǎn)的位置來(lái)確定該移動(dòng)設(shè)備的位置。
【發(fā)明內(nèi)容】
[0006] 描述了用于管理基于網(wǎng)絡(luò)的定位系統(tǒng)的位置數(shù)據(jù)庫(kù)的方法、程序產(chǎn)品和 系統(tǒng)。服務(wù)器計(jì)算機(jī)可以從位于無(wú)線通信網(wǎng)絡(luò)的接入點(diǎn)的通信范圍內(nèi)的知道位置 (location-aware)的移動(dòng)設(shè)備(例如,能夠使用GPS的設(shè)備)接收位置信息。服務(wù)器計(jì)算 機(jī)可以為每個(gè)接入點(diǎn)利用接收到的位置來(lái)計(jì)算平均地理位置。基于所述平均地理位置,月艮 務(wù)器計(jì)算機(jī)可以將接入點(diǎn)分配給地理網(wǎng)格的單元。服務(wù)器計(jì)算機(jī)可以基于接收的數(shù)據(jù)和接 入點(diǎn)的流行度、穩(wěn)定性、壽命和新鮮度,對(duì)每個(gè)單元中的接入點(diǎn)進(jìn)行過(guò)濾。服務(wù)器計(jì)算機(jī)可 以將接入點(diǎn)的標(biāo)識(shí)符與所述平均地理位置相關(guān)聯(lián)地存儲(chǔ)在位置數(shù)據(jù)庫(kù)中。
[0007] 移動(dòng)設(shè)備可以使用該移動(dòng)設(shè)備可以與之連接的接入點(diǎn)的位置確定該移動(dòng)設(shè)備的 位置。在連接到地理網(wǎng)格上的單元中的接入點(diǎn)后,移動(dòng)設(shè)備可以請(qǐng)求和接收該接入點(diǎn)的位 置信息、該單元中的其它接入點(diǎn)的位置、以及與該單元鄰近的單元中的接入點(diǎn)的位置。移動(dòng) 設(shè)備可以基于接收到的信息識(shí)別與該移動(dòng)設(shè)備的通信范圍內(nèi)的接入點(diǎn)相關(guān)聯(lián)的位置。移動(dòng) 設(shè)備可以使用識(shí)別出的位置計(jì)算平均地理位置。移動(dòng)設(shè)備還可以計(jì)算每個(gè)位置與所計(jì)算出 的平均值之間的距離。移動(dòng)設(shè)備可以排除與平均值相距足夠遠(yuǎn)的位置。移動(dòng)設(shè)備可以重復(fù) 所述計(jì)算和排除,直到為該平均地理位置實(shí)現(xiàn)了某個(gè)精度級(jí)別。移動(dòng)設(shè)備可以在移動(dòng)設(shè)備 的地圖顯示上顯示該信息。
[0008] 可以實(shí)施用于管理基于網(wǎng)絡(luò)的定位系統(tǒng)的位置數(shù)據(jù)庫(kù)的技術(shù),以實(shí)現(xiàn)下列示例性 優(yōu)點(diǎn)。當(dāng)無(wú)線通信網(wǎng)絡(luò)的某個(gè)接入點(diǎn)的實(shí)際位置未知時(shí),一個(gè)地理區(qū)域可以與該接入點(diǎn)相 關(guān)聯(lián)。該地理區(qū)域可以對(duì)應(yīng)于位于該接入點(diǎn)的通信范圍內(nèi)的實(shí)際移動(dòng)設(shè)備可能位于的區(qū) 域,而不是該接入點(diǎn)的實(shí)際位置??梢曰趤?lái)自移動(dòng)設(shè)備的實(shí)時(shí)數(shù)據(jù)估計(jì)該地理區(qū)域,該實(shí) 時(shí)數(shù)據(jù)可被頻繁更新,并且因此可以提供最新的位置信息。如果接入點(diǎn)已離開(kāi)或被關(guān)閉,該 接入點(diǎn)可從數(shù)據(jù)庫(kù)中被去除,以避免無(wú)效的位置確定??梢曰谠谝惶熘械母鱾€(gè)時(shí)間從移 動(dòng)設(shè)備接收的數(shù)據(jù)來(lái)計(jì)算地理區(qū)域,從而地理區(qū)域可以對(duì)應(yīng)于各種使用模式,例如,路上時(shí) 間(commute hour)、工作時(shí)間、或晚上。
[0009] 與地理區(qū)域相關(guān)聯(lián)的接入點(diǎn)可用于確定位于該接入點(diǎn)的通信范圍內(nèi)的不能使用 GPS的移動(dòng)設(shè)備的位置。接入點(diǎn)和移動(dòng)設(shè)備之間的數(shù)據(jù)傳輸可以在移動(dòng)設(shè)備空閑時(shí)進(jìn)行,以 避免干擾移動(dòng)設(shè)備和接入點(diǎn)之間的正常通信。由于利用接入點(diǎn)的位置來(lái)確定移動(dòng)設(shè)備的位 置的系統(tǒng)可以傳輸直接位于移動(dòng)設(shè)備的通信范圍內(nèi)的接入點(diǎn)的位置以及在鄰近區(qū)域中的 接入點(diǎn)的位置,因此,該系統(tǒng)可以自我限制對(duì)移動(dòng)設(shè)備的帶寬的消耗。因此,即使當(dāng)移動(dòng)設(shè) 備移動(dòng)時(shí),頻繁更新和重傳也是不必要的。每個(gè)單元中的接入點(diǎn)的過(guò)濾機(jī)制可以進(jìn)一步限 制在每次傳輸中傳輸給移動(dòng)設(shè)備的數(shù)據(jù)量。與例如使用信號(hào)強(qiáng)度來(lái)估計(jì)位置相比,移動(dòng)設(shè) 備可以更準(zhǔn)確地估計(jì)其位置,這是由于信號(hào)強(qiáng)度可能由于各種干擾而改變。當(dāng)例如GPS信 號(hào)弱時(shí)(例如,在建筑物內(nèi)),能夠使用GPS的移動(dòng)設(shè)備可以利用無(wú)線接入點(diǎn)的位置。
[0010] 在下面的附圖和描述中提出了管理基于網(wǎng)絡(luò)的定位系統(tǒng)的位置數(shù)據(jù)庫(kù)的一種或 多種實(shí)現(xiàn)方式的細(xì)節(jié)。從該描述、附圖和權(quán)利要求書(shū)中,將明了管理位置數(shù)據(jù)庫(kù)的其它特 征、方面和優(yōu)點(diǎn)。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0011] 圖1A是管理位置數(shù)據(jù)庫(kù)的技術(shù)的概覽。
[0012] 圖1B示出了管理三維空間中的位置數(shù)據(jù)庫(kù)的技術(shù)。
[0013] 圖2A - 2C不出了利用移動(dòng)設(shè)備確定與WLAN中的接入點(diǎn)相關(guān)聯(lián)的位置的不例性 階段。
[0014] 圖2D示出了在三維空間中利用移動(dòng)設(shè)備確定與WLAN中的接入點(diǎn)相關(guān)聯(lián)的位置的 示例性階段。
[0015] 圖3A和3B是示出了利用移動(dòng)設(shè)備確定與WLAN中的接入點(diǎn)相關(guān)聯(lián)的位置的示例 性處理的流程圖。
[0016] 圖3C是示出了實(shí)現(xiàn)管理位置數(shù)據(jù)庫(kù)的技術(shù)的示例性系統(tǒng)的框圖。
[0017] 圖4A示出了利用基于網(wǎng)絡(luò)的定位系統(tǒng)中的位置數(shù)據(jù)庫(kù)來(lái)確定移動(dòng)設(shè)備的位置的 技術(shù)。
[0018] 圖4B是示出了利用位置數(shù)據(jù)庫(kù)來(lái)確定移動(dòng)設(shè)備的位置的示例性處理的流程圖。
[0019] 圖4C是示出了確定移動(dòng)設(shè)備的位置的示例性自適應(yīng)多遍處理的流程圖。
[0020] 圖5示出了利用無(wú)線接入點(diǎn)的位置確定移動(dòng)設(shè)備的位置的示例性用戶界面。
[0021] 圖6是用于實(shí)現(xiàn)參考圖1 一 5描述的特征和操作的示例性系統(tǒng)體系結(jié)構(gòu)的框圖。
[0022] 圖7是移動(dòng)設(shè)備的示例性體系結(jié)構(gòu)的框圖。
[0023] 在各個(gè)附圖中,類(lèi)似的附圖標(biāo)記表示類(lèi)似的元件。
【具體實(shí)施方式】
[0024] 管理位置數(shù)據(jù)庫(kù)的概述
[0025] 圖1A是管理基于網(wǎng)絡(luò)的定位系統(tǒng)的位置數(shù)據(jù)庫(kù)的技術(shù)的概覽。無(wú)線局域網(wǎng) (WLAN)可以是包括若干接入點(diǎn)105的無(wú)線通信網(wǎng)絡(luò)。接入點(diǎn)105可以包括能夠作為用于使 無(wú)線設(shè)備連接到有線網(wǎng)絡(luò)的通信集線器的硬件設(shè)備或計(jì)算機(jī)軟件。多個(gè)接入點(diǎn)105可分布 在一個(gè)區(qū)域中(例如,辦公樓或機(jī)場(chǎng))。
[0026] 接入點(diǎn)105可以使用各種通信協(xié)議與無(wú)線設(shè)備(例如,移動(dòng)設(shè)備108和110)通 信。在某些實(shí)現(xiàn)中,接入點(diǎn)105可以是WiFi?網(wǎng)絡(luò)的接入點(diǎn),其執(zhí)行基于電氣和電子工程 師協(xié)會(huì)(ΙΕΕΕ)802· 11的協(xié)議(例如,IEEE802. 11a)。在某些實(shí)現(xiàn)中,接入點(diǎn)105可以是 全球微波接入互操作性(WiMAX)網(wǎng)絡(luò)的接入點(diǎn),其執(zhí)行基于IEEE802. 16的協(xié)議(例如, IEEE802. 16-2004或IEEE802. 16e-2005)。接入點(diǎn)105可以具有一定通信范圍,取決于包括 接入點(diǎn)105的配置和物理環(huán)境的因素,該通信范圍可以從接入點(diǎn)105的位置到達(dá)從小于數(shù) 十米到數(shù)百米的任何位置。當(dāng)多個(gè)移動(dòng)設(shè)備108和110位于接入點(diǎn)105的通信范圍內(nèi)時(shí), 移動(dòng)設(shè)備108和110可以連接到接入點(diǎn)。相應(yīng)地,單個(gè)移動(dòng)設(shè)備108或110可以訪問(wèn)多個(gè) 接入點(diǎn)105以便連接。移動(dòng)設(shè)備108和110可以基于各種因素選擇移動(dòng)設(shè)備108和110可 以連接到的特定接入點(diǎn)105。例如,該選擇可以基于移動(dòng)設(shè)備108是否被授權(quán)連接到接入點(diǎn) 105a,或接入點(diǎn)105a是否可以為到移動(dòng)設(shè)備108的無(wú)線連接提供最強(qiáng)的信號(hào)。
[0027] 系統(tǒng)可以確定與接入點(diǎn)105相關(guān)聯(lián)的位置區(qū)域115??梢赃@樣計(jì)算位置區(qū)域115, 使得它們指示位于接入點(diǎn)105通信范圍內(nèi)的移動(dòng)設(shè)備108可能位于何處。系統(tǒng)可以基于 來(lái)自位于接入點(diǎn)105通信范圍內(nèi)的移動(dòng)設(shè)備108的已知位置來(lái)進(jìn)行該確定。移動(dòng)設(shè)備108 可以是知道位置(location-aware)的移動(dòng)設(shè)備,例如,能夠使用GPS的移動(dòng)設(shè)備,其內(nèi)置有 或連接到可以接收全球定位系統(tǒng)(GPS)信號(hào)并利用GPS信號(hào)確定位置的接收器。知道位置 的移動(dòng)設(shè)備108在圖1A中被表示為黑三角。當(dāng)知道位置的移動(dòng)設(shè)備108位于特定接入點(diǎn) 1〇5(例如,接入點(diǎn)105a)的通信范圍內(nèi)時(shí),知道位置的移動(dòng)設(shè)備108可以將這些設(shè)備的位 置傳輸給接入點(diǎn)l〇5a。接入點(diǎn)105a可以將該傳輸以及接入點(diǎn)105a的標(biāo)識(shí)符轉(zhuǎn)發(fā)到系統(tǒng)。 系統(tǒng)可以確定位于接入點(diǎn)l〇5a的通信范圍內(nèi)的任何移動(dòng)設(shè)備108或110最可能位于的估 計(jì)位置區(qū)域115a。在本說(shuō)明書(shū)中,估計(jì)的位置區(qū)域115被稱(chēng)為存在區(qū)域(presence area), 以表明,當(dāng)位于特定接入點(diǎn)105的通信范圍內(nèi)時(shí)移動(dòng)設(shè)備108或110可能存在。
[0028] 為了計(jì)算存在區(qū)域115,系統(tǒng)可以應(yīng)用迭代過(guò)程(例如,通過(guò)執(zhí)行多遍分析)。該 迭代過(guò)程可以以圓的形式確定與接入點(diǎn)(例如,接入點(diǎn)105)相關(guān)聯(lián)的存在區(qū)域(例如,存 在區(qū)域115)。該圓可以具有與基于位于接入點(diǎn)105通信范圍內(nèi)的知道位置的移動(dòng)設(shè)備108 的位置而計(jì)算的平均地理位置相對(duì)應(yīng)的中心。該圓可以具有與誤差幅度(error margin) 相對(duì)應(yīng)的半徑,可以根據(jù)例如移動(dòng)設(shè)備108的位置和平均地理位置之間的距離確定該誤差 幅度。下面將參考圖2和3描述關(guān)于該迭代過(guò)程的進(jìn)一步細(xì)節(jié)??梢灾芷谛缘貓?zhí)行該迭代 過(guò)程(例如,每6個(gè)小時(shí)),以便捕捉在一天的不同時(shí)間期間的不同的無(wú)線接入使用模式,以 及捕捉接入點(diǎn)105的可能的移動(dòng)。
[0029] 該系統(tǒng)可將存在區(qū)域115的信息發(fā)送給位于接入點(diǎn)105通信范圍內(nèi)的移動(dòng)設(shè)備, 包括不能使用GPS的移動(dòng)設(shè)備(例如移動(dòng)設(shè)備110),從而進(jìn)行接收的移動(dòng)設(shè)備可以確定使 用存在區(qū)域115的設(shè)備的估計(jì)位置。例如,如果移動(dòng)設(shè)備110位于接入點(diǎn)105b的通信范圍 內(nèi),則移動(dòng)設(shè)備110的位置可被估計(jì)為與跟接入點(diǎn)l〇5b相關(guān)聯(lián)的存在區(qū)域115b相一致。
[0030] 在給定區(qū)域中(例如,機(jī)場(chǎng)),可能存在大量接入點(diǎn)105。另外,由于移動(dòng)設(shè)備110 可以移動(dòng),發(fā)送不直接位于移動(dòng)設(shè)備110的通信范圍內(nèi)、但是與移動(dòng)設(shè)備110足夠靠近的接 入點(diǎn)的位置可能是合乎常理的,從而移動(dòng)設(shè)備110可以使用這些位置來(lái)跟蹤其移動(dòng)。為了 避免向移動(dòng)設(shè)備110發(fā)送大量位置數(shù)據(jù),系統(tǒng)可以對(duì)接入點(diǎn)105和存在區(qū)域115進(jìn)行過(guò)濾, 從而僅有有限數(shù)目的接入點(diǎn)(例如,接入點(diǎn)l〇5a)的位置數(shù)據(jù)而不是世界上存在的每個(gè)接 入點(diǎn)的位置數(shù)據(jù)被傳輸。過(guò)濾可以基于各種因素,包括位置115和接入點(diǎn)105的流行度、穩(wěn) 定性、壽命和新鮮度。
[0031] 為了過(guò)濾位置115和接入點(diǎn)105,系統(tǒng)可以創(chuàng)建包含單元102的地理網(wǎng)格100。單 元102可以是形狀大體為矩形的多邊形,該多邊形對(duì)應(yīng)于地理網(wǎng)格100上可由地理區(qū)域的 標(biāo)識(shí)點(diǎn)(例如,中心或拐角)的緯度和經(jīng)度、以及大小(例如,以經(jīng)度度數(shù)衡量的長(zhǎng)度和以 維度度數(shù)衡量的寬度)來(lái)標(biāo)識(shí)的地理區(qū)域。每個(gè)單元102可被用作可包含一定數(shù)量的位置 的容器。例如,單元102可以是矩形,其長(zhǎng)度是0.0005度子午線(近似為56米),并且其寬 度是0. 0005度緯線(以米為單位的寬度可以根據(jù)緯度而改變)。單元102可被配置為擁有 與接入點(diǎn)105相對(duì)應(yīng)的若干(例如3個(gè))存在區(qū)域115。在某些實(shí)現(xiàn)中,如果存在區(qū)域115 的中心位于單元102的邊界內(nèi),則單元102可以"擁有"存在區(qū)域115??梢曰谝粋€(gè)或多 個(gè)可靠性因素,從位于單元102中的所有存在區(qū)域115中選擇存在區(qū)域115。該選擇可以基 于各種準(zhǔn)則,諸如,流行度、穩(wěn)定性、壽命和新鮮度。
[0032] 特定接入點(diǎn)(例如,接入點(diǎn)105b)和與該接入點(diǎn)相關(guān)聯(lián)的存在區(qū)域(例如,存在區(qū) 域115)不必位于相同單元102中。例如當(dāng)接入點(diǎn)105b位于單元102a中的一個(gè)建筑上,并 且位于接入點(diǎn)105b的通信范圍內(nèi)的大部分移動(dòng)設(shè)備108位于單元102b中的另一個(gè)建筑中 時(shí),這可能發(fā)生。在某些實(shí)現(xiàn)中,系統(tǒng)可以忽略接入點(diǎn)105b的實(shí)際位置。
[0033] 當(dāng)移動(dòng)設(shè)備110連接到接入點(diǎn)(例如,接入點(diǎn)105a,其相關(guān)聯(lián)的存在區(qū)域115a位 于單元102c中)時(shí),或以其它方式(例如,通過(guò)蜂窩網(wǎng)絡(luò))連接到系統(tǒng)時(shí),移動(dòng)設(shè)備110可 以從系統(tǒng)接收位置更新。位置更新可以包括位于存在區(qū)域115a所位于的相同單元(例如, 單元102c)中的所有存在區(qū)域115。位置更新還可以包括位于在地理網(wǎng)格100上與單元 102c鄰近的其它單元102 (例如,單元102a和單元102b)中的存在區(qū)域115。
[0034] 當(dāng)移動(dòng)設(shè)備110連接到接入點(diǎn)105a時(shí),移動(dòng)設(shè)備110可以檢測(cè)可用的其它接入點(diǎn) 1〇5(例如,接入點(diǎn)105b)。移動(dòng)設(shè)備110可以識(shí)別可用的接入點(diǎn)的存在區(qū)域(例如,存在區(qū) 域115a和115b)。移動(dòng)設(shè)備110可以使用各種算法計(jì)算移動(dòng)設(shè)備110的當(dāng)前位置。例如, 當(dāng)僅識(shí)別出一個(gè)存在區(qū)域115a時(shí),移動(dòng)設(shè)備110可以將存在區(qū)域115a指定為移動(dòng)設(shè)備110 的當(dāng)前位置。當(dāng)識(shí)別出兩個(gè)或更多個(gè)存在區(qū)域115時(shí),移動(dòng)設(shè)備110可以使用迭代過(guò)程(例 如,多遍分析)來(lái)計(jì)算其當(dāng)前位置。該迭代過(guò)程可以計(jì)算這些存在區(qū)域的平均位置,計(jì)算這 些存在區(qū)域與該平均位置之間的距離,并且排除與該平均位置相距最遠(yuǎn)的存在區(qū)域。移動(dòng) 設(shè)備110可以重復(fù)該迭代,直到滿足用于確定移動(dòng)設(shè)備110的位置的精度要求。移動(dòng)設(shè)備 110可以將該平均位置指定為移動(dòng)設(shè)備110的當(dāng)前位置,并且在地圖顯示設(shè)備上顯示該平 均位置。
[0035] 在某些實(shí)現(xiàn)中,在移動(dòng)設(shè)備110上從系統(tǒng)接收的位置更新可以包括許多鄰近單 元,從而可以覆蓋圍繞存在區(qū)域115a的足夠大的區(qū)域(例如,1或2平方公里)?;诟采w 該大區(qū)域的位置更新,移動(dòng)設(shè)備110可以避免在移動(dòng)設(shè)備110移動(dòng)時(shí)必須請(qǐng)求頻繁的更新。 當(dāng)例如移動(dòng)設(shè)備110空閑或具有可用通信帶寬時(shí),移動(dòng)設(shè)備110可以有機(jī)會(huì)接收更新的存 在區(qū)域信息。
[0036] 圖1B示出了管理三維空間中的位置數(shù)據(jù)庫(kù)。某些知道位置的移動(dòng)設(shè)備108(例如, 能夠使用GPS的設(shè)備)可以在三維空間中標(biāo)識(shí)位置。這些位置可以以緯度、經(jīng)度和高度表 示。高度可被表示為例如從海平面以米測(cè)量的海拔。當(dāng)需要移動(dòng)設(shè)備的高度來(lái)定位該移動(dòng) 設(shè)備時(shí),可能希望在三維空間中定位移動(dòng)設(shè)備。例如,可以使用高度來(lái)確定移動(dòng)設(shè)備處于高 層建筑中的哪一層。移動(dòng)設(shè)備108在三維空間中的位置可被顯示在將海拔作為注釋的二維 地圖上,或被顯示在三維地圖上。
[0037] 移動(dòng)設(shè)備108可以連接到接入點(diǎn)126。移動(dòng)設(shè)備108可以是可將其位置傳輸給系 統(tǒng)的知道位置的移動(dòng)設(shè)備,所述位置包括緯度、經(jīng)度和高度坐標(biāo)。該系統(tǒng)可以基于從移動(dòng)設(shè) 備108接收的緯度、經(jīng)度和高度坐標(biāo)來(lái)計(jì)算平均位置。以平均位置為中心并且以誤差幅度 為半徑的三維空間124可與接入點(diǎn)126相關(guān)聯(lián)。空間124可以表示當(dāng)移動(dòng)設(shè)備位于接入點(diǎn) 126的通信范圍內(nèi)時(shí),該移動(dòng)設(shè)備可能位于的空間。在本說(shuō)明書(shū)中,空間124被稱(chēng)為存在空 間。
[0038] 系統(tǒng)向位于接入點(diǎn)126通信范圍內(nèi)的移動(dòng)設(shè)備發(fā)送關(guān)于存在空間124的信息。接 收到該信息的移動(dòng)設(shè)備可以利用該信息來(lái)確定其地理位置。系統(tǒng)可以將三維地理空間劃分 為三維網(wǎng)格120。三維網(wǎng)格120可以由三維單元122組成。每個(gè)三維單元122可以具有與 地理網(wǎng)格100的單元102相對(duì)應(yīng)的基底。每個(gè)三維單元122可以具有作為一個(gè)維度的高度 (例如,以米衡量)。如果存在空間124的中心在單元122中,則存在空間124可被稱(chēng)為位于 單元122中。系統(tǒng)可以基于存在空間的流行度(例如,形成了多少?gòu)拇嬖诳臻g中的移動(dòng)設(shè) 備108到接入點(diǎn)126的連接)、存在空間124的穩(wěn)定性(例如,存在空間124有多么穩(wěn)定)、 接入點(diǎn)126的壽命(例如,接入點(diǎn)126已經(jīng)存在了多久)、和存在空間124的新鮮度(例如, 來(lái)自位于接入點(diǎn)126通信范圍內(nèi)的移動(dòng)設(shè)備108的最新位置傳輸是何時(shí)接收到的),來(lái)限制 單元122中的存在空間的數(shù)目。
[0039] 系統(tǒng)可以基于三維網(wǎng)格120的三維單元122將關(guān)于存在空間124和鄰近存在空間 的信息傳輸給位于接入點(diǎn)126通信范圍內(nèi)的移動(dòng)設(shè)備(例如,移動(dòng)設(shè)備110)。移動(dòng)設(shè)備110 可以利用該信息估計(jì)移動(dòng)設(shè)備110在三維空間中的當(dāng)前位置,并且在三維地圖上顯示所估 計(jì)的當(dāng)前位置。
[0040] 示例性的用于管理位置數(shù)據(jù)庫(kù)的服務(wù)器端處理和系統(tǒng)
[0041] 圖2A - 2C示出了管理位置數(shù)據(jù)庫(kù)的示例性階段。為了方便起見(jiàn),將借助于包括 實(shí)現(xiàn)這些技術(shù)的服務(wù)器的基于網(wǎng)絡(luò)的定位系統(tǒng)來(lái)描述這些技術(shù)。
[0042] 圖2A示出了可用于確定與接入點(diǎn)105相關(guān)聯(lián)的存在區(qū)域的多遍分析的示例性階 段。接入點(diǎn)105可以具有覆蓋區(qū)域202,該覆蓋區(qū)域202可以由接入點(diǎn)105的發(fā)射器的信號(hào) 強(qiáng)度和其它因素(例如,接入點(diǎn)105周?chē)牡乩韰^(qū)域的物理特性)來(lái)確定。位于覆蓋區(qū)域 202內(nèi)的移動(dòng)設(shè)備108可以無(wú)線地連接到接入點(diǎn)105。接入點(diǎn)105可以允許移動(dòng)設(shè)備108 通過(guò)各種網(wǎng)關(guān)連接到有線網(wǎng)絡(luò)。有線網(wǎng)絡(luò)可以包括數(shù)據(jù)網(wǎng)絡(luò)(例如,Internet)、公共交換 電話網(wǎng)絡(luò)(PSTN)、其它數(shù)字或模擬網(wǎng)絡(luò)、或以上的組合。
[0043] 移動(dòng)設(shè)備108可以包括知道位置的移動(dòng)設(shè)備(例如,能夠使用GPS的移動(dòng)設(shè)備)。 每個(gè)知道位置的移動(dòng)設(shè)備108 (以圖2A的黑三角表示)可以檢測(cè)其當(dāng)前地理位置。該當(dāng)前 地理位置可以用包括移動(dòng)設(shè)備108的緯度和經(jīng)度的地理坐標(biāo)來(lái)表示。當(dāng)移動(dòng)設(shè)備108與接 入點(diǎn)105通信時(shí),移動(dòng)設(shè)備108可以通過(guò)接入點(diǎn)105將位置信息傳輸給系統(tǒng)。該位置信息 可以與接入點(diǎn)105的標(biāo)識(shí)符(例如,接入點(diǎn)105的媒體訪問(wèn)控制(MAC)地址)相關(guān)聯(lián)。系 統(tǒng)可以利用從多個(gè)移動(dòng)設(shè)備108接收的位置信息來(lái)確定可以與接入點(diǎn)105相關(guān)聯(lián)的存在區(qū) 域。該存在區(qū)域不一定圍住了接入點(diǎn)100實(shí)際位于的位置。該存在區(qū)域也不一定與覆蓋區(qū) 域202的幾何位置或形狀相對(duì)應(yīng),盡管存在區(qū)域可以位于覆蓋區(qū)域202內(nèi)。
[0044] 具有覆蓋區(qū)域202的移動(dòng)設(shè)備108的分布可以對(duì)應(yīng)于移動(dòng)設(shè)備108在特定時(shí)刻 (例如,接入點(diǎn)105所位于的時(shí)區(qū)的本地時(shí)間上午8:30)的快照(snapshot)。每個(gè)移動(dòng)設(shè) 備108可以與單個(gè)位置相關(guān)聯(lián)。具有覆蓋區(qū)域202的移動(dòng)設(shè)備108的分布也可以對(duì)應(yīng)于移 動(dòng)設(shè)備108在一段時(shí)間(例如,從上午4點(diǎn)到上午10點(diǎn)的6個(gè)小時(shí))上的位置。每個(gè)移動(dòng) 設(shè)備108可以與多個(gè)位置相關(guān)聯(lián)(例如,當(dāng)移動(dòng)設(shè)備108移動(dòng)時(shí))。與多個(gè)位置相關(guān)聯(lián)的單 個(gè)移動(dòng)設(shè)備108可以由系統(tǒng)中的多個(gè)位置表示,如圖2A中的多個(gè)三角形所示的。
[0045] 服務(wù)器可以確定從移動(dòng)設(shè)備108接收的一組位置的平均地理位置。這一組位置可 以包括在特定時(shí)刻或在特定時(shí)間段期間從移動(dòng)設(shè)備108接收的位置。平均地理位置可被指 定作為圓204a所包圍的區(qū)域的中心205。圓204a的中心不必與接入點(diǎn)105的位置一致。 服務(wù)器可以計(jì)算平均地理位置與這一組位置中的每個(gè)位置之間的距離,并且識(shí)別一個(gè)或多 個(gè)離群點(diǎn)(outlier)。離群點(diǎn)可以是這一組位置中與平均地理位置相距最遠(yuǎn)的位置。到中 心的距離超過(guò)某個(gè)閾值的離群點(diǎn)(例如,位置210)可以從該組位置中被排除。圓204a可 以具有半徑206,半徑206對(duì)應(yīng)于平均地理位置與排除離群點(diǎn)之后的當(dāng)前一組位置中的位 置之間的最長(zhǎng)距離。
[0046] 圖2B示出了多遍分析中在圖2A的階段之后的示例性階段。到圖2A的平均地理 位置(圓204a的中心205)的距離超過(guò)某個(gè)閾值的位置已從該組位置中被排除。所述閾值 可被配置為使得排除某個(gè)百分比的位置(例如,圖2A的位置中的5% )。可以基于該組位 置中剩下的位置(例如,剩下的95%的位置)來(lái)計(jì)算新的平均地理位置。新的平均地理位 置可以是例如圓204b的中心225。在各種實(shí)現(xiàn)中,計(jì)算新的平均地理位置可以包括對(duì)該組 位置中的剩余位置進(jìn)行平均,選擇該組位置中的中間地理位置(例如,通過(guò)選擇中間緯度 或中間經(jīng)度),或應(yīng)用其它算法。用于計(jì)算平均地理位置的算法在多遍分析的每一遍中可以 是相同的,或可以在每遍中彼此不同。
[0047] 當(dāng)排除了離群點(diǎn)位置時(shí),由圓204b包含的區(qū)域可以小于在前一遍中確定的由圓 204a包含的區(qū)域。該較小的區(qū)域可以反映增加的計(jì)算精度。圓204b的中心225不一定與 圓204a的中心205 -致。在某些實(shí)現(xiàn)中,圓204b的半徑216可以對(duì)應(yīng)于與圓204b的中心 225相距最遠(yuǎn)的移動(dòng)設(shè)備108的剩余位置。半徑216可以表示在當(dāng)前這一遍中計(jì)算的存在 區(qū)域的新的估計(jì)的誤差幅度。
[0048] 圖2C示出了多遍分析的示例性的最終階段。當(dāng)滿足一定的退出條件時(shí),系統(tǒng)可以 在最終階段之后終止迭代過(guò)程。最終階段可以產(chǎn)生與一群聚集的移動(dòng)設(shè)備108的位置相對(duì) 應(yīng)的最終平均地理位置。最終平均地理位置可被表示為圓204c的中心235。圓204c可以 具有與最終誤差幅度相對(duì)應(yīng)的半徑,該半徑基于最終平均地理位置與這一群聚集的位置中 的位置之間的距離。通過(guò)接入點(diǎn)105的標(biāo)識(shí)符(例如,MAC地址),圓204c可被指定為與接 入點(diǎn)105相關(guān)聯(lián)的存在區(qū)域。
[0049] 服務(wù)器可以基于各種因素確定是否要在位置數(shù)據(jù)庫(kù)中包括接入點(diǎn)105的標(biāo)識(shí)符 和相關(guān)聯(lián)的存在區(qū)域。例如,服務(wù)器可以對(duì)地理網(wǎng)格100的單元102中的存在區(qū)域的數(shù)目 進(jìn)行計(jì)數(shù),并且基于流行度、穩(wěn)定性和壽命來(lái)選擇若干存在區(qū)域。服務(wù)器可以將位置數(shù)據(jù)庫(kù) 中的存在區(qū)域(包括存在區(qū)域204c,如果選擇了存在區(qū)域204c的話)的信息發(fā)送給移動(dòng)設(shè) 備(例如,移動(dòng)設(shè)備215),不論移動(dòng)設(shè)備215是否能夠使用GPS。
[0050] 圖2D示出了管理三維空間中的位置數(shù)據(jù)庫(kù)的示例性階段。在圖2D中,軸X、Y和Z 可用于指示三維空間。例如,軸Χ、Υ和Ζ可以分別表示經(jīng)度、緯度和高度。為了方便,接入 點(diǎn)126的位置被示出為與圖2D中的Χ、Υ和Ζ軸上的零點(diǎn)重合。在某些實(shí)現(xiàn)中,接入點(diǎn)126 的實(shí)際位置(例如,緯度、經(jīng)度和高度坐標(biāo))在計(jì)算中是可選的。
[0051] 圖2D的每個(gè)三角可以表示位于三維空間中的移動(dòng)設(shè)備的位置。這些位置可以在 三維空間的一個(gè)平面上具有投影(例如,投影226)。該平面可被定義在任意高度(例如, 接入點(diǎn)126的高度)。例如,可由軸X和Υ定義該平面。接入點(diǎn)126可以對(duì)應(yīng)于覆蓋區(qū)域 222,覆蓋區(qū)域222可以由接入點(diǎn)126的信號(hào)強(qiáng)度和其它限制因素(例如,信號(hào)路徑中的地 板、天花板、建筑)來(lái)確定。
[0052] -種多遍分析可以基于從位于單元空間202中的知道位置的移動(dòng)設(shè)備108接收的 一組位置,將地理空間與WLAN的接入點(diǎn)126相關(guān)聯(lián)。在該多遍分析的一遍中,可以通過(guò)例如 對(duì)該組位置中的位置的緯度、經(jīng)度和高度坐標(biāo)進(jìn)行平均來(lái)確定平均地理位置(例如,空間 224的中心)??梢杂?jì)算平均地理位置與覆蓋區(qū)域222中的位置之間的距離。位于覆蓋區(qū) 域222內(nèi)但是與平均地理位置相距足夠遠(yuǎn)的位置可從該組位置和進(jìn)一步計(jì)算中被排除。空 間224的半徑可以由例如該組位置中的剩余位置與平均地理位置之間的最遠(yuǎn)距離來(lái)確定。
[0053] 系統(tǒng)可以重復(fù)以下階段:計(jì)算一組位置中的平均地理位置、計(jì)算該平均地理位置 與該組位置中的位置之間的距離、以及基于計(jì)算的距離從這組位置中進(jìn)行排除??梢岳^續(xù) 該重復(fù),直到滿足退出條件為止。以平均地理位置為中心、其半徑基于平均地理位置與該組 位置中剩余位置之間的距離的空間可被指定為可以與接入點(diǎn)126相關(guān)聯(lián)的存在空間。
[0054] 圖3A是示出了管理位置數(shù)據(jù)庫(kù)的示例性處理300的流程圖??梢允褂锰幚?00, 以便例如確定與WLAN的接入點(diǎn)相關(guān)聯(lián)的存在區(qū)域或存在空間。存在區(qū)域或存在空間可用 于確定不能使用GPS的移動(dòng)設(shè)備的位置。為了方便,將借助于執(zhí)行處理300的系統(tǒng)來(lái)描述 處理300。
[0055] 系統(tǒng)可以從位于接入點(diǎn)105通信范圍內(nèi)的一個(gè)或多個(gè)第一移動(dòng)設(shè)備108接收 (302) -組位置。每個(gè)位置可以由一組地理坐標(biāo)(例如,緯度、經(jīng)度和高度)表示。該位置 可被與接入點(diǎn)105的標(biāo)識(shí)符(例如,MAC地址)相關(guān)聯(lián)。當(dāng)接入點(diǎn)105與系統(tǒng)通信時(shí),接入 點(diǎn)105可自動(dòng)提供接入點(diǎn)的標(biāo)識(shí)符。在各種實(shí)現(xiàn)中,這一組位置可以對(duì)應(yīng)于一個(gè)時(shí)間段(例 如,6個(gè)小時(shí),或者從接入點(diǎn)105所位于的時(shí)區(qū)的上午6點(diǎn)到上午10點(diǎn))。
[0056] 在某些實(shí)現(xiàn)中,該時(shí)間段可被配置為反映一天中各個(gè)時(shí)間的特定使用模式的特 性。位于接入點(diǎn)105通信范圍內(nèi)的移動(dòng)設(shè)備最可能位于的區(qū)域可以在一天當(dāng)中改變,從而 指示在特定時(shí)間的各種使用模式。例如,該時(shí)間段可以對(duì)應(yīng)于"路上時(shí)間"、"工作時(shí)間"、"夜 晚時(shí)間",等等。一天中的時(shí)間的特性可以對(duì)應(yīng)于移動(dòng)設(shè)備108的各種使用模式。例如,在路 上時(shí)間期間,與接入點(diǎn)105相關(guān)聯(lián)的存在區(qū)域可以處于或接近高速公路;在工作時(shí)間期間, 與接入點(diǎn)105相關(guān)聯(lián)的存在區(qū)域可以處于或接近辦公大樓;在夜晚時(shí)間,與接入點(diǎn)105相關(guān) 聯(lián)的存在區(qū)域可以散開(kāi)而沒(méi)有特定的集中點(diǎn)。系統(tǒng)可以基于例如從上午4點(diǎn)到上午10點(diǎn) 接收到的位置計(jì)算存在區(qū)域,并且基于從上午10點(diǎn)到下午4點(diǎn)接收到的位置重新計(jì)算,等 等。在每個(gè)特征時(shí)間段中接收到的位置可以集合成系統(tǒng)中的一組位置。這些位置可以任何 數(shù)據(jù)結(jié)構(gòu)(例如,集合、列表、關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)記錄等)存儲(chǔ)在耦接到服務(wù)器的存儲(chǔ) 設(shè)備上。
[0057] 系統(tǒng)可以基于接收到的位置的平均值來(lái)確定(304)與接入點(diǎn)105相關(guān)聯(lián)的地理位 置。該地理位置可以包括上述的存在區(qū)域或存在空間。存在區(qū)域或存在空間可以通過(guò)例如 接入點(diǎn)105的MAC地址與接入點(diǎn)105相關(guān)聯(lián)。在某些實(shí)現(xiàn)中,確定地理位置可以包括對(duì)接 收到的一組位置應(yīng)用多遍算法,包括每一遍從該組位置中排除至少一個(gè)位置。確定地理位 置可以包括周期性地應(yīng)用多遍算法。
[0058] 系統(tǒng)可以基于各種因素,包括接入點(diǎn)105的流行度、地理位置的穩(wěn)定性和接入點(diǎn) 105的壽命,將接入點(diǎn)105和與接入點(diǎn)105相關(guān)聯(lián)的地理位置分配(306)給地理網(wǎng)格上的 一個(gè)單元(例如,單元102)。在某些實(shí)現(xiàn)中,接入點(diǎn)105的流行度可以衡量有多少移動(dòng)設(shè) 備108位于接入點(diǎn)105的通信范圍內(nèi)。可以通過(guò)例如系統(tǒng)在一段時(shí)間內(nèi)接收到位于接入點(diǎn) 105通信范圍內(nèi)的多少移動(dòng)設(shè)備108位置,來(lái)測(cè)量接入點(diǎn)的流行度。
[0059] 與接入點(diǎn)105相關(guān)聯(lián)的存在區(qū)域的穩(wěn)定性可以反映,如果該存在區(qū)域被用于估計(jì) 位于接入點(diǎn)105通信范圍內(nèi)的設(shè)備的位置,那么該存在區(qū)域的可靠性如何??梢酝ㄟ^(guò)例如 比較由最后兩次計(jì)算計(jì)算出的存在區(qū)域,并且確定這些存在區(qū)域之間的重疊程度,來(lái)測(cè)量 與接入點(diǎn)105相關(guān)聯(lián)的存在區(qū)域的穩(wěn)定性。重疊程度越高,存在區(qū)域越穩(wěn)定。
[0060] 接入點(diǎn)105的壽命可以反映與接入點(diǎn)105相關(guān)聯(lián)的數(shù)據(jù)的質(zhì)量。例如,在數(shù)據(jù)庫(kù) 中存在了更長(zhǎng)時(shí)間的接入點(diǎn)可能比最近添加的接入點(diǎn)更可靠。可以通過(guò)位置數(shù)據(jù)庫(kù)中的數(shù) 據(jù)的歷史來(lái)測(cè)量接入點(diǎn)105的壽命。
[0061] 在某些實(shí)現(xiàn)中,還可以使用數(shù)據(jù)的新鮮度來(lái)確定是否將與接入點(diǎn)105相關(guān)聯(lián)的存 在區(qū)域分配給地理網(wǎng)格100的單元102??梢酝ㄟ^(guò)系統(tǒng)在多久以前從移動(dòng)設(shè)備108接收到 最新位置,來(lái)測(cè)量數(shù)據(jù)的新鮮度。
[0062] 系統(tǒng)可以基于流行度、穩(wěn)定性、壽命和新鮮度,為位于地理網(wǎng)格100的單元102中 的每個(gè)存在區(qū)域評(píng)分。位于單元102中的所有存在區(qū)域的至少一部分(例如,三個(gè)存在區(qū) 域,包括與接入點(diǎn)105相關(guān)聯(lián)的存在區(qū)域)可被分配給單元102。被分配的接入點(diǎn)和存在區(qū) 域可用于定位位于接入點(diǎn)105通信范圍內(nèi)的移動(dòng)設(shè)備(例如,移動(dòng)設(shè)備110)。未被分配的 存在區(qū)域可被存儲(chǔ)在位置數(shù)據(jù)庫(kù)中以供將來(lái)使用。
[0063] 系統(tǒng)可以將與接入點(diǎn)105相關(guān)聯(lián)的地理位置提供(308)給位于接入點(diǎn)105通信范 圍內(nèi)的第二移動(dòng)設(shè)備(例如,移動(dòng)設(shè)備110)。系統(tǒng)還可以向第二移動(dòng)設(shè)備提供位于相同單 元中的其它地理位置,以及與分配給鄰近單元的接入點(diǎn)相關(guān)聯(lián)的地理位置。這些位置可以 根據(jù)請(qǐng)求或使用各種推送或廣播技術(shù)從接入點(diǎn)105被傳輸給第二移動(dòng)設(shè)備。
[0064] 在某些實(shí)現(xiàn)中,系統(tǒng)可以接收、處理和傳輸三維位置信息。存在空間(例如,存在 空間124)可被分配給地理三維網(wǎng)格(例如,三維網(wǎng)格120)上的三維單元(例如,三維單元 122)。這些位置可以根據(jù)請(qǐng)求或使用各種推送或廣播技術(shù),從接入點(diǎn)126被傳輸給位于接 入點(diǎn)126通信范圍內(nèi)的第二移動(dòng)設(shè)備。
[0065] 圖3B是示出了利用一組位置計(jì)算平均地理位置的示例性處理304的流程圖。為 了方便,將借助于執(zhí)行處理304的系統(tǒng)來(lái)描述處理304。
[0066] 系統(tǒng)可以利用這一組位置中的位置計(jì)算(324)平均地理位置。計(jì)算平均地理位置 可以包括計(jì)算該組中的位置的緯度、經(jīng)度和高度的平均,并且將位于所計(jì)算的平均緯度、經(jīng) 度和高度的位置指定為平均地理位置。在某些實(shí)現(xiàn)中,計(jì)算平均地理位置可以包括將位于 該組中的位置的中間緯度、中間經(jīng)度和中間高度處的位置指定為平均地理位置。
[0067] 系統(tǒng)可以計(jì)算(326)這一組位置中的位置與平均地理位置之間的距離。在某些實(shí) 現(xiàn)中,系統(tǒng)可以在歐幾里得空間中計(jì)算該組中每個(gè)位置與平均地理位置之間的線性距離。 在某些實(shí)現(xiàn)中,系統(tǒng)可以考慮地球的曲率,計(jì)算該組中每個(gè)位置與平均地理位置之間的測(cè) 地距離。
[0068] 在階段326中計(jì)算出的距離可被指定為與一個(gè)中心相關(guān)聯(lián)的半徑。該中心可以是 在階段324中計(jì)算出的平均地理位置,其可以是圓(例如,圓204a)的中心??梢曰谠摻M 位置中的一個(gè)位置與平均地理位置之間的至少一個(gè)距離確定圓的半徑。在某些實(shí)現(xiàn)中,該 半徑可以等于平均地理位置和該組中剩余的位置之間的最長(zhǎng)距離。在某些實(shí)現(xiàn)中,該半徑 可以是這樣的距離:當(dāng)使用該半徑并以該平均地理位置為中心畫(huà)圓l〇6d時(shí),該圓可以包含 該組中一定百分比(例如,80%)的剩余位置。該半徑可以表示誤差幅度,超出該誤差幅度, 對(duì)不能使用GPS的移動(dòng)設(shè)備的位置估計(jì)不太可能在統(tǒng)計(jì)上有意義。
[0069] 系統(tǒng)可以基于平均地理位置和至少一個(gè)位置之間的距離從該組中排除(328)該 至少一個(gè)位置。在某些實(shí)現(xiàn)中,系統(tǒng)可以排除到平均地理位置的距離超過(guò)某個(gè)閾值距離的 位置。在多遍分析的每一遍中,通過(guò)排除表現(xiàn)為遠(yuǎn)離位置集群(例如,一群聚集的位置)的 位置,系統(tǒng)可以增加所估計(jì)的平均地理位置的精度。遠(yuǎn)離一群聚集位置的位置在估計(jì)與接 入點(diǎn)105相關(guān)聯(lián)的存在區(qū)域時(shí)不太有用,并且可被排除。在各種實(shí)現(xiàn)中,閾值距離可以從一 遍到下一遍改變。在某些實(shí)現(xiàn)中,閾值距離可以是到平均地理位置的這樣一個(gè)距離,其中這 一組位置中某個(gè)百分比(例如,95%)的位置位于該距離以內(nèi)。在某些實(shí)現(xiàn)中,閾值距離可 以是與遍相對(duì)應(yīng)的一組距離(例如,第一遍250米,第二遍150米,等等)。當(dāng)平均地理位置 和至少一個(gè)位置之間的距離超出該閾值距離時(shí),系統(tǒng)可以從這一組位置中排除該至少一個(gè) 位置。
[0070] 系統(tǒng)可以重復(fù)處理304的階段324、326和328,直到滿足退出條件為止。系統(tǒng)可以 確定(330)是否滿足退出條件以便終止重復(fù)。在某些實(shí)現(xiàn)中,當(dāng)重復(fù)次數(shù)達(dá)到某個(gè)閾值次 數(shù)(例如,10次)時(shí),退出條件被滿足。該閾值次數(shù)以及用于排除位置的百分比可以是可配 置的,以便精細(xì)調(diào)節(jié)在確定度(例如,較大的存在區(qū)域可以得到單元中的移動(dòng)設(shè)備實(shí)際上 位于該存在區(qū)域中的更大置信度)和精度(例如,較小的存在區(qū)域可以得到移動(dòng)設(shè)備的更 準(zhǔn)確位置)之間的平衡。例如,當(dāng)百分比被設(shè)置為95%并且遍數(shù)被設(shè)置為10時(shí),最后一遍 可以產(chǎn)生包含所有位置數(shù)據(jù)點(diǎn)的大約60%的圓。
[0071] 在某些實(shí)現(xiàn)中,當(dāng)存在區(qū)域或存在空間足夠小時(shí),階段330的退出條件可被滿足。 在移動(dòng)設(shè)備高度集中的單元中,存在區(qū)域可能足夠小,以至于更多的遍將不一定會(huì)增加精 度。當(dāng)圓的半徑達(dá)到低于閾值半徑時(shí),階段324、326和328的重復(fù)可以終止。例如,閾值半 徑可以是8 - 10米。基于接收到的一組位置中的位置的分布模式(例如,接收到的位置數(shù) 據(jù)點(diǎn)的數(shù)目、位置數(shù)據(jù)點(diǎn)的密度、以及單元中的集中區(qū)域),閾值半徑可以隨著接入點(diǎn)的不 同而不同。
[0072] 系統(tǒng)可以將地理區(qū)域指定(332)為以平均地理位置為中心、其半徑基于至少一個(gè) 計(jì)算出的距離的圓。該地理區(qū)域可以與接入點(diǎn)(例如,接入點(diǎn)105)相關(guān)聯(lián)。服務(wù)器可以將 該地理區(qū)域(例如,中心和半徑)提供給移動(dòng)設(shè)備,以便計(jì)算該移動(dòng)設(shè)備的當(dāng)前位置。中心 可以用緯度和經(jīng)度表示。在某些在三維空間中計(jì)算距離的實(shí)現(xiàn)中,中心可以進(jìn)一步用高度 表不。
[0073] 圖3C是示出了實(shí)施管理位置數(shù)據(jù)庫(kù)的技術(shù)的示例性系統(tǒng)的框圖。該系統(tǒng)可以包 括一個(gè)或多個(gè)處理器、一個(gè)或多個(gè)存儲(chǔ)指令的存儲(chǔ)器設(shè)備、和其它硬件或軟件組件。該系統(tǒng) 可以包括位置引擎350,其可被用于確定將與接入點(diǎn)(例如,接入點(diǎn)105)相關(guān)聯(lián)的存在區(qū)域 或存在空間。
[0074] 位置引擎350可以包括數(shù)據(jù)收集模塊352,其可以通過(guò)各個(gè)接入點(diǎn)從各個(gè)移動(dòng)設(shè) 備接收數(shù)據(jù)。該數(shù)據(jù)可以包括多個(gè)數(shù)據(jù)點(diǎn),這些數(shù)據(jù)點(diǎn)可以指示一個(gè)或多個(gè)知道位置的移 動(dòng)設(shè)備(例如,移動(dòng)設(shè)備108)的位置,以及表明移動(dòng)設(shè)備108連接到哪個(gè)接入點(diǎn)的接入點(diǎn) 標(biāo)識(shí)符(例如,接入點(diǎn)105的MAC地址)。在某些實(shí)現(xiàn)中,數(shù)據(jù)點(diǎn)還可以包括關(guān)于移動(dòng)設(shè)備 108所在時(shí)區(qū)的信息。數(shù)據(jù)收集模塊352可以包括數(shù)據(jù)接收模塊354和數(shù)據(jù)索引模塊356, 數(shù)據(jù)接收模塊354可以接收從移動(dòng)設(shè)備108傳輸?shù)臄?shù)據(jù)。數(shù)據(jù)索引模塊356可以對(duì)接收到 的數(shù)據(jù)點(diǎn)執(zhí)行各種處理。例如,數(shù)據(jù)索引模塊356可以基于單元ID對(duì)緯度、經(jīng)度和高度排 序。數(shù)據(jù)索引模塊356還可以基于時(shí)間段將數(shù)據(jù)分組。例如,可以為一個(gè)可配置的時(shí)間段 (例如,6小時(shí))創(chuàng)建新的一組接收位置。
[0075] 各組接收到的移動(dòng)設(shè)備108的位置可被存儲(chǔ)在數(shù)據(jù)點(diǎn)數(shù)據(jù)庫(kù)360中。數(shù)據(jù)點(diǎn)數(shù)據(jù) 庫(kù)360可以存儲(chǔ)各個(gè)移動(dòng)設(shè)備108的當(dāng)前和歷史位置。數(shù)據(jù)點(diǎn)數(shù)據(jù)庫(kù)360可以包括ad-hoc 數(shù)據(jù)庫(kù)、關(guān)系數(shù)據(jù)庫(kù)、面向?qū)ο髷?shù)據(jù)庫(kù)。數(shù)據(jù)點(diǎn)數(shù)據(jù)庫(kù)360可相對(duì)于位置引擎350在本地或 遠(yuǎn)程托管。
[0076] 可以利用位置計(jì)算模塊364計(jì)算數(shù)據(jù)點(diǎn)數(shù)據(jù)庫(kù)中的各組數(shù)據(jù)點(diǎn)中的平均地理位 置,計(jì)算平均地理位置和各個(gè)數(shù)據(jù)點(diǎn)的位置之間的距離,以及為進(jìn)一步的計(jì)算從組中排除 位置。位置計(jì)算模塊364可以為特定組(例如,與一個(gè)單元ID相關(guān)聯(lián)的一組數(shù)據(jù)點(diǎn))執(zhí)行 計(jì)算,直到達(dá)到該特定組的退出條件為止。位置計(jì)算模塊364可以為每個(gè)接入點(diǎn)(例如,接 入點(diǎn)105)確定存在區(qū)域或存在空間。
[0077] 在某些實(shí)現(xiàn)中,位置計(jì)算模塊364可以使用有效性檢查器366,基于各種準(zhǔn)則和數(shù) 據(jù)點(diǎn)中的各種數(shù)據(jù),對(duì)存在區(qū)域或存在空間執(zhí)行有效性檢查。例如,從移動(dòng)設(shè)備108接收的 數(shù)據(jù)點(diǎn)可以包括移動(dòng)國(guó)家代碼(MCC)和時(shí)區(qū)信息。有效性檢查器366可以將計(jì)算的存在區(qū) 域或存在空間與對(duì)應(yīng)于以MCC表示的國(guó)家的多邊形和對(duì)應(yīng)于時(shí)區(qū)的多邊形進(jìn)行比較。如 果計(jì)算的存在區(qū)域或存在空間位于這些多邊形之外,則有效性檢查器366可以記錄一個(gè)異 常,并且去除該接入點(diǎn)。
[0078] 位置過(guò)濾引擎368可以確定存在區(qū)域或存在空間是否可被用于估計(jì)當(dāng)前位于接 入點(diǎn)通信范圍內(nèi)的移動(dòng)設(shè)備的位置。位置過(guò)濾引擎368可以將地理區(qū)域劃分為地理網(wǎng)格 100的單元102或三維網(wǎng)格120的三維單元122。位置過(guò)濾引擎368可以基于流行度、穩(wěn) 定性、壽命和新鮮度,給存在區(qū)域或存在空間評(píng)分。位置過(guò)濾引擎368可以將位于每個(gè)單元 102或三維單元122中得分最高的存在區(qū)域或存在空間分配給單元102或三維單元。
[0079] 存在區(qū)域或存在空間可以由具有一組位置的平均緯度、經(jīng)度和高度坐標(biāo)的中心來(lái) 定義。存在區(qū)域或存在空間還可以由基于這一組位置中的位置到該中心的距離所確定的半 徑來(lái)定義。存在區(qū)域或存在空間的中心的緯度、經(jīng)度和高度坐標(biāo)以及存在區(qū)域或存在空間 的半徑可被存儲(chǔ)在位置數(shù)據(jù)庫(kù)372中。位置數(shù)據(jù)庫(kù)372可以存儲(chǔ)已分配和未分配的存在區(qū) 域和存在空間。位置計(jì)算模塊364可以在后續(xù)計(jì)算中分配未分配的存在區(qū)域或存在空間。 位置數(shù)據(jù)庫(kù)372可由位置計(jì)算模塊364周期性地更新。
[0080] 位置數(shù)據(jù)庫(kù)372的數(shù)據(jù)可利用數(shù)據(jù)分發(fā)模塊376被分發(fā)到移動(dòng)設(shè)備。數(shù)據(jù)分發(fā)模 塊376可以根據(jù)請(qǐng)求、通過(guò)廣播、或使用無(wú)需從移動(dòng)設(shè)備接收請(qǐng)求的各種推送技術(shù),將已分 配的與接入點(diǎn)相關(guān)聯(lián)的存在區(qū)域和存在空間的信息(例如,中心坐標(biāo)和半徑)發(fā)送給移動(dòng) 設(shè)備(例如,不能使用GPS的移動(dòng)設(shè)備110)。
[0081] 在某些實(shí)現(xiàn)中,數(shù)據(jù)分發(fā)模塊376可以在一個(gè)傳輸會(huì)話中向移動(dòng)設(shè)備發(fā)送多個(gè)存 在區(qū)域和存在空間。為了減少可能消耗移動(dòng)設(shè)備通信帶寬的到移動(dòng)設(shè)備的位置傳輸?shù)臄?shù) 目,數(shù)據(jù)分發(fā)模塊376可以使用鄰居定位器378來(lái)定位移動(dòng)設(shè)備110所處單元的鄰居。鄰 近單元可以包括,例如,圍繞移動(dòng)設(shè)備110所處單元的若干單元,從而該單元和周?chē)鷨卧?總區(qū)域覆蓋一定地理區(qū)域(例如,1或2平方公里)。向移動(dòng)設(shè)備110發(fā)送關(guān)于與多個(gè)單元 (例如,400個(gè)單元)相關(guān)聯(lián)的存在區(qū)域和存在空間的信息可以減少當(dāng)移動(dòng)設(shè)備110跨單元 移動(dòng)時(shí)的傳輸數(shù)目。在某些實(shí)現(xiàn)中,當(dāng)移動(dòng)設(shè)備110移動(dòng)到以前發(fā)送過(guò)的所有單元之外時(shí), 數(shù)據(jù)分發(fā)模塊376僅需要向移動(dòng)設(shè)備110發(fā)送更新。
[0082] 利用無(wú)線接入點(diǎn)的位置確定移動(dòng)設(shè)備的位置的示例性處理
[0083] 圖4A示出了用于利用無(wú)線接入點(diǎn)的位置確定移動(dòng)設(shè)備的位置的技術(shù)。移動(dòng)設(shè)備 400可以是可以利用無(wú)線接入點(diǎn)的位置來(lái)確定其位置的示例性移動(dòng)設(shè)備。示出了包括接入 點(diǎn)404的通信網(wǎng)絡(luò)的示例性部分。
[0084] 移動(dòng)設(shè)備400可以位于接入點(diǎn)404a的通信范圍內(nèi)。移動(dòng)設(shè)備400可以從接入點(diǎn) 404a接收包括關(guān)于鄰近接入點(diǎn)的存在區(qū)域或存在空間(包括存在區(qū)域406)的信息的數(shù)據(jù)。 移動(dòng)設(shè)備400可以將接收到的數(shù)據(jù)存儲(chǔ)在存儲(chǔ)設(shè)備上。存儲(chǔ)的數(shù)據(jù)可周期性地更新。
[0085] 在不出的例子中,移動(dòng)設(shè)備400位于接入點(diǎn)404a的通信范圍內(nèi)。此外,移動(dòng)設(shè)備 400在接入點(diǎn)404b、404c和404d的通信范圍內(nèi)。移動(dòng)設(shè)備400可以在WLAN中使用的無(wú)線通 信協(xié)議(例如,IEEE802. 11a)下識(shí)別接入點(diǎn)404a、404b、404c和404d。接入點(diǎn)404a、404b、 404c和404d可以由接入點(diǎn)的MAC地址或其它標(biāo)識(shí)符(例如,Bluetooth?標(biāo)識(shí)符)來(lái)標(biāo)識(shí)。
[0086] 移動(dòng)設(shè)備400可以識(shí)別分別與接入點(diǎn)404a - d相關(guān)聯(lián)的存在區(qū)域406a、406b、 406c和406d。識(shí)別存在區(qū)域406a - d可以包括從耦接到移動(dòng)設(shè)備400的存儲(chǔ)器設(shè)備中檢 索關(guān)于存在區(qū)域406a - d的信息。在某些實(shí)現(xiàn)中,移動(dòng)設(shè)備400可以通過(guò)向服務(wù)器發(fā)送接 入點(diǎn)404a - d的標(biāo)識(shí)符,從服務(wù)器請(qǐng)求存在區(qū)域406a - d。
[0087] 基于存在區(qū)域406a - d,移動(dòng)設(shè)備400可以對(duì)存在區(qū)域406a - d執(zhí)行迭代過(guò)程 (例如,多遍分析)。該迭代過(guò)程可以產(chǎn)生地理區(qū)域402,其可以是對(duì)移動(dòng)設(shè)備400的當(dāng)前地 理位置的估計(jì)。當(dāng)使用三維位置信息時(shí),地理區(qū)域402可以是地理空間。移動(dòng)設(shè)備400可 以在顯示設(shè)備上(例如,在地圖顯示器上)顯示估計(jì)的當(dāng)前位置。
[0088] 圖4B是示出了使用位置數(shù)據(jù)庫(kù)確定移動(dòng)設(shè)備的位置的示例性處理410的流程圖。 為了方便,將借助于執(zhí)行處理410的移動(dòng)設(shè)備400來(lái)描述處理410。
[0089] 移動(dòng)設(shè)備400可以識(shí)別(412)移動(dòng)設(shè)備400與之連接的當(dāng)前接入點(diǎn)。移動(dòng)設(shè)備 400可以使用當(dāng)前接入點(diǎn)來(lái)確定是否要請(qǐng)求位于移動(dòng)設(shè)備400上的位置數(shù)據(jù)庫(kù)的更新。位 于移動(dòng)設(shè)備400上的位置數(shù)據(jù)庫(kù)可以包括以前下載到移動(dòng)設(shè)備400的接入點(diǎn)的記錄。位于 移動(dòng)設(shè)備400上的位置數(shù)據(jù)庫(kù)中的記錄可以包括接入點(diǎn)的標(biāo)識(shí)符(例如,MAC地址)和相 對(duì)應(yīng)的位置(例如,緯度/經(jīng)度坐標(biāo))。
[0090] 在階段412,移動(dòng)設(shè)備400可以確定當(dāng)前接入點(diǎn)是否被包括在位置數(shù)據(jù)庫(kù)的記錄 中。移動(dòng)設(shè)備可以使用移動(dòng)設(shè)備400與之連接的當(dāng)前接入點(diǎn)的標(biāo)識(shí)符(例如,MAC地址)執(zhí) 行位置數(shù)據(jù)庫(kù)查找。如果當(dāng)前接入點(diǎn)被包括在位置數(shù)據(jù)庫(kù)的記錄中,則移動(dòng)設(shè)備可以確定 位置數(shù)據(jù)庫(kù)是最新的。如果當(dāng)前接入點(diǎn)未被包括在位置數(shù)據(jù)庫(kù)的記錄中,則移動(dòng)設(shè)備400 可以確定位置數(shù)據(jù)庫(kù)需要更新。
[0091] 移動(dòng)設(shè)備400可以使用當(dāng)前接入點(diǎn)的標(biāo)識(shí)符從服務(wù)器請(qǐng)求(414)移動(dòng)設(shè)備400的 位置數(shù)據(jù)庫(kù)的更新。位置數(shù)據(jù)庫(kù)中的記錄,包括接入點(diǎn)的標(biāo)識(shí)符和位置,可利用新接入點(diǎn)的 新標(biāo)識(shí)符和位置被刷新。移動(dòng)設(shè)備400可將當(dāng)前接入點(diǎn)的標(biāo)識(shí)符發(fā)送到服務(wù)器。服務(wù)器可 以將某個(gè)單位識(shí)別為地理網(wǎng)格中的中心單元。中心單元可以是這樣的單元,其包括與當(dāng)前 接入點(diǎn)的標(biāo)識(shí)符相關(guān)聯(lián)的位置,并且將該單元和鄰近單元中的所有接入點(diǎn)位置發(fā)送給移動(dòng) 設(shè)備400。
[0092] 移動(dòng)設(shè)備400可以接收(416)與第二接入點(diǎn)相關(guān)聯(lián)的一組第二位置。第二接入點(diǎn) 可以分布在中心單元和在地理網(wǎng)格上與該中心單元鄰近的單元中。與當(dāng)前接入點(diǎn)相關(guān)聯(lián)的 位置(例如,圓區(qū)域的中心)可以位于中心單元中。鄰近單元可以是在地理網(wǎng)格上位于中心 單元旁邊或與中心單元最近的單元。鄰近單元的數(shù)目可以具有這樣的值,即,使得中心單元 和鄰近單元可以覆蓋預(yù)定的地理區(qū)域(例如,1. 5平方公里)。當(dāng)與接入點(diǎn)相關(guān)聯(lián)的位置處 于由中心單元和鄰近單元覆蓋的地理區(qū)域內(nèi)時(shí),這些接入點(diǎn)的標(biāo)識(shí)符和與這些接入點(diǎn)相關(guān) 聯(lián)的位置可被包括在更新中。在當(dāng)前接入點(diǎn)未被包括在位置數(shù)據(jù)庫(kù)的記錄中時(shí)更新移動(dòng)設(shè) 備400上的位置的一個(gè)示例性優(yōu)點(diǎn)是,當(dāng)移動(dòng)設(shè)備400在單元之間移動(dòng)時(shí)不需要更新,直到 移動(dòng)設(shè)備400移動(dòng)到一個(gè)與單個(gè)接入點(diǎn)的覆蓋區(qū)域相比的大區(qū)域之外為止。因此,可以避 免頻繁更新,為移動(dòng)設(shè)備400和服務(wù)器兩者節(jié)省了資源(例如,對(duì)移動(dòng)設(shè)備而言,節(jié)省了帶 寬、CPU周期、電池電能;對(duì)服務(wù)器而言,當(dāng)大量移動(dòng)設(shè)備從一個(gè)街區(qū)移動(dòng)到下一個(gè)街區(qū)時(shí), 服務(wù)器不需要向這些設(shè)備發(fā)送頻繁的更新)。
[0093] 移動(dòng)設(shè)備400可以使用接收到的一組接入點(diǎn)位置和標(biāo)識(shí)符來(lái)更新(418)位于移動(dòng) 設(shè)備400上的位置數(shù)據(jù)庫(kù)。更新可以將移動(dòng)設(shè)備400 "定位"在由中心單元和鄰近單元覆 蓋的地理區(qū)域的"中心"。移動(dòng)設(shè)備400可以不需要請(qǐng)求另一個(gè)更新,直到移動(dòng)設(shè)備400從 該中心單元移動(dòng)到未被鄰近單元之一覆蓋的單元。例如,如果每個(gè)單元大約為50米乘50 米,并且該預(yù)定地理區(qū)域是1. 5平方公里,則每次更新可以將大約600個(gè)單元注入移動(dòng)設(shè)備 400的位置數(shù)據(jù)庫(kù)中。移動(dòng)設(shè)備400不需要請(qǐng)求另一個(gè)更新,除非移動(dòng)設(shè)備移動(dòng)到該600個(gè) 單元覆蓋的區(qū)域之外。
[0094] 移動(dòng)設(shè)備400可以使用位于移動(dòng)設(shè)備400上的位置數(shù)據(jù)庫(kù)來(lái)計(jì)算(420)移動(dòng)設(shè)備 400的當(dāng)前位置??梢允褂糜梢苿?dòng)設(shè)備400執(zhí)行的自適應(yīng)多遍處理執(zhí)行該計(jì)算。下面將參 考圖4C描述多遍處理的進(jìn)一步細(xì)節(jié)。雖然其它因素(例如,來(lái)自各個(gè)接入點(diǎn)的信號(hào)強(qiáng)度) 可以幫助對(duì)當(dāng)前位置的計(jì)算,但是在該計(jì)算中不需要這些因素。
[0095] 移動(dòng)設(shè)備400可以可選地在移動(dòng)設(shè)備400的地圖顯示設(shè)備上顯示(422)移動(dòng)設(shè)備 400的當(dāng)前位置。在下文會(huì)參考圖5更詳細(xì)地描述當(dāng)前位置的示例性顯示。
[0096] 圖4C是示出了確定移動(dòng)設(shè)備的位置的示例性自適應(yīng)多遍處理430的流程圖。為 了方便,將借助于執(zhí)行處理430的移動(dòng)設(shè)備400來(lái)描述處理430。
[0097] 移動(dòng)設(shè)備400可以接收(432)無(wú)線通信網(wǎng)絡(luò)(例如,WLAN)的接入點(diǎn)(例如接入 點(diǎn)404)的標(biāo)識(shí)符。這些接入點(diǎn)可以位于移動(dòng)設(shè)備400的通信范圍內(nèi)。所述標(biāo)識(shí)符不必與 移動(dòng)設(shè)備400與之連接或可以連接的接入點(diǎn)相關(guān)聯(lián)。例如,在特定位置,移動(dòng)設(shè)備400可以 處于3到20個(gè)接入點(diǎn)之間的通信范圍內(nèi)。移動(dòng)設(shè)備400可能僅僅能夠連接到兩個(gè)接入點(diǎn) (由于例如接入點(diǎn)和移動(dòng)設(shè)備400的安全設(shè)置)。移動(dòng)設(shè)備400可能僅僅有效地連接到這 兩個(gè)接入點(diǎn)中的一個(gè)接入點(diǎn)。然而,在計(jì)算中可以使用移動(dòng)設(shè)備400接收到的所有接入點(diǎn) 標(biāo)識(shí)符。
[0098] 移動(dòng)設(shè)備400可以從移動(dòng)設(shè)備400的位置數(shù)據(jù)庫(kù)中識(shí)別(433)與這些接入點(diǎn)相關(guān) 聯(lián)的一組位置。該組位置可以對(duì)應(yīng)于與接入點(diǎn)相關(guān)聯(lián)的存在區(qū)域406或存在空間。每個(gè)位 置可以由地理坐標(biāo)(例如,緯度、經(jīng)度和高度)表示。每個(gè)位置可以與一個(gè)接入點(diǎn)404的標(biāo) 識(shí)符(例如,MAC地址)相關(guān)聯(lián)。移動(dòng)設(shè)備400可以使用數(shù)據(jù)庫(kù)查找來(lái)識(shí)別這些位置。
[0099] 移動(dòng)設(shè)備400可以使用該組中的位置來(lái)計(jì)算(434)平均地理位置。計(jì)算平均地理 位置可以包括計(jì)算該組中的位置的緯度、經(jīng)度和高度的平均值,并且將位于計(jì)算出的平均 緯度、經(jīng)度和高度處的位置指定為平均地理位置。在某些實(shí)現(xiàn)中,計(jì)算平均地理位置可以包 括將該組中的位置的中間緯度、中間經(jīng)度和中間高度指定為平均地理位置。
[0100] 移動(dòng)設(shè)備400可以計(jì)算(436)該組中的位置與平均地理位置之間的距離。在某些 實(shí)現(xiàn)中,系統(tǒng)可以在歐幾里得空間中計(jì)算該組中的每個(gè)位置與平均地理位置之間的線性距 離。在某些實(shí)現(xiàn)中,系統(tǒng)可以考慮地球的曲率,計(jì)算該組中的每個(gè)位置與平均地理位置之間 的測(cè)地距離。
[0101] 在階段436中計(jì)算出的距離可被指定為與一個(gè)中心相關(guān)聯(lián)的半徑。該中心可以是 在階段434中計(jì)算出的平均地理位置,其可以是圓(例如,圍繞地理區(qū)域402的圓)的中心。 可以基于該組位置中的一個(gè)位置與平均地理位置之間的至少一個(gè)距離確定圓的半徑。在某 些實(shí)現(xiàn)中,該半徑可以等于平均地理位置和該組中剩余的位置之間的最長(zhǎng)距離。在某些實(shí) 現(xiàn)中,該半徑可以是這樣的距離:當(dāng)使用該半徑并以該平均地理位置為中心畫(huà)圓時(shí),該圓可 以包含該組中一定百分比(例如,80%)的剩余位置。該半徑可以表示誤差幅度,超出該誤 差幅度,對(duì)不能使用GPS的移動(dòng)設(shè)備的位置估計(jì)不太可能在統(tǒng)計(jì)上有意義。
[0102] 移動(dòng)設(shè)備400可以基于平均地理位置和至少一個(gè)位置之間的距離從該組中排除 (438)該至少一個(gè)位置。在某些實(shí)現(xiàn)中,系統(tǒng)可以排除到平均地理位置的距離超過(guò)某個(gè)閾值 距離的位置。在多遍分析的每一遍中,通過(guò)排除表現(xiàn)為遠(yuǎn)離位置集群(例如,一群聚集的位 置)的位置,系統(tǒng)可以增加所估計(jì)的平均地理位置的精度。遠(yuǎn)離一群聚集位置的位置在估 計(jì)移動(dòng)設(shè)備400的當(dāng)前位置時(shí)不太有用,并且可被排除。在各種實(shí)現(xiàn)中,閾值距離可以從一 遍到下一遍改變。例如,閾值距離可以是與遍相對(duì)應(yīng)的一組距離(例如,第一遍50米,第二 遍30米,等等)。當(dāng)平均地理位置和至少一個(gè)位置之間的距離超過(guò)該閾值距離時(shí),系統(tǒng)可以 從這一組位置中排除該至少一個(gè)位置。
[0103] 在某些實(shí)現(xiàn)中,移動(dòng)設(shè)備400可以確定將被排除的位置的閾值百分比。該閾值百 分比可以具有預(yù)先指定的值(例如,5%)。在每一遍中,移動(dòng)設(shè)備400可以排除閾值百分比 的與平均地理位置相距最遠(yuǎn)的位置。
[0104] 移動(dòng)設(shè)備400可以重復(fù)處理430的階段434、436和438,直到滿足退出條件為止。 系統(tǒng)可以確定(440)是否滿足退出條件以便終止重復(fù)。在某些實(shí)現(xiàn)中,當(dāng)重復(fù)次數(shù)達(dá)到某 個(gè)閾值次數(shù)(例如5次)時(shí),退出條件被滿足。該閾值次數(shù)可以與原始接收的組中的位置數(shù) 目有關(guān)。該閾值數(shù)目以及排除位置的百分比可以是可配置的,以便精細(xì)調(diào)節(jié)在確定度(例 如,較大的存在區(qū)域可以得到單元中的移動(dòng)設(shè)備實(shí)際上位于該存在區(qū)域中的更大置信度) 和精度(例如,較小的存在區(qū)域可以得到移動(dòng)設(shè)備的更準(zhǔn)確位置)之間的平衡。例如,當(dāng)百 分比被設(shè)置為95%并且遍數(shù)被設(shè)置為10時(shí),最后一遍可以產(chǎn)生包含所有位置數(shù)據(jù)點(diǎn)的大 約60%的圓。
[0105] 在某些實(shí)現(xiàn)中,當(dāng)存在區(qū)域或存在空間足夠小時(shí),階段330的退出條件可被滿足。 在接入點(diǎn)404高度集中的區(qū)域中,估計(jì)的當(dāng)前位置可能包括足夠小的區(qū)域,以至于更多的 遍將不一定會(huì)增加精度。當(dāng)圓的半徑達(dá)到低于閾值半徑時(shí),階段434、436和438的重復(fù)可 以終止。例如,閾值半徑可以是8 - 10米。該閾值半徑可以基于存在區(qū)域406的半徑。在 某些實(shí)現(xiàn)中,如果某些存在區(qū)域406的半徑足夠小,則閾值半徑可以很小,以便反映估計(jì)的 置信度。
[0106] 移動(dòng)設(shè)備400可以利用以平均地理位置為中心、其半徑基于至少一個(gè)計(jì)算出的距 離的圓,來(lái)指定(442)移動(dòng)設(shè)備400的當(dāng)前位置。該中心可以用緯度和經(jīng)度表示。在某些 在三維空間中計(jì)算距離的實(shí)現(xiàn)中,中心可以進(jìn)一步用高度表示。在某些實(shí)現(xiàn)中,移動(dòng)設(shè)備還 可以在顯示設(shè)備上在地圖用戶界面上顯示當(dāng)前位置。下面將參考圖5描述示例性的地圖用 戶界面。
[0107] 用于確定移動(dòng)設(shè)備的位置的示例性用戶界面
[0108] 圖5示出了用于利用無(wú)線接入點(diǎn)的位置確定移動(dòng)設(shè)備的位置的示例性用戶界面。 在圖5中,在移動(dòng)設(shè)備500上顯示地理區(qū)域的示例地圖502。在某些實(shí)現(xiàn)中,移動(dòng)設(shè)備500 可以在移動(dòng)設(shè)備500的觸敏顯示器530上顯示地圖502。當(dāng)用戶選擇地圖對(duì)象以便觀看基 于地圖和位置的服務(wù)時(shí),可以顯示地圖502。在某些實(shí)現(xiàn)中,可以通過(guò)語(yǔ)音激活來(lái)選擇諸如 地圖對(duì)象之類(lèi)的對(duì)象??梢栽诘貓D502的頂部顯示搜索欄504和書(shū)簽列表對(duì)象506??梢?在地圖底部下面顯示一個(gè)或多個(gè)顯示對(duì)象,例如,搜索對(duì)象508、路線對(duì)象510、地圖觀看對(duì) 象512和當(dāng)前位置對(duì)象514。
[0109] 搜索欄504可用于在地圖上尋找地址或其它位置。例如,用戶可以在搜索欄504 中輸入其家庭地址,從而包含該地址的區(qū)域?qū)@示在地圖502上。書(shū)簽列表對(duì)象506可以 例如給出包含頻繁訪問(wèn)的地址(諸如,用戶的家庭地址)的書(shū)簽列表。書(shū)簽列表還可以例 如包含特別的書(shū)簽,諸如當(dāng)前位置(例如,移動(dòng)設(shè)備500的當(dāng)前位置)。
[0110] 搜索對(duì)象508可用于顯示搜索欄504和其它與地圖有關(guān)的搜索菜單。路線對(duì)象510 可以例如給出允許用戶輸入開(kāi)始和結(jié)束位置的菜單界面。然后該界面可以顯示信息(例 如,從開(kāi)始位置到結(jié)束位置的路線的方向和行進(jìn)時(shí)間)。地圖觀看對(duì)象512可以給出允許用 戶選擇地圖502的顯示選項(xiàng)的菜單。例如,可以將地圖502從黑白變成彩色,可以改變地圖 的背景,或用戶可以改變地圖的亮度。
[0111] 當(dāng)前位置對(duì)象514可以允許用戶在地圖502上觀看表明設(shè)備500當(dāng)前處于何處的 地理區(qū)域516。地理區(qū)域516可以對(duì)應(yīng)于估計(jì)的地理區(qū)域(例如,地理區(qū)域402),該估計(jì)的 地理區(qū)域的中心是與處于移動(dòng)設(shè)備500通信范圍內(nèi)的接入點(diǎn)相關(guān)聯(lián)的數(shù)據(jù)點(diǎn)的平均地理 位置??梢曰谠撈骄乩砦恢煤团c這些接入點(diǎn)相關(guān)聯(lián)的一個(gè)或多個(gè)位置之間的距離確定 地理區(qū)域516的半徑。當(dāng)選擇當(dāng)前位置對(duì)象514時(shí),特別的當(dāng)前位置書(shū)簽可被置于書(shū)簽列 表中。如果該特別的當(dāng)前位置書(shū)簽以前已被設(shè)置在書(shū)簽列表中,則該舊的書(shū)簽信息可以例 如被新的當(dāng)前位置信息所取代。在某些實(shí)現(xiàn)中,該特別的當(dāng)前位置書(shū)簽被綁定到地理區(qū)域 516的形心。即,該特別的當(dāng)前位置書(shū)簽可以包括地理區(qū)域516的形心的坐標(biāo)。地理區(qū)域 516可以基于利用存儲(chǔ)在移動(dòng)設(shè)備500的存儲(chǔ)器設(shè)備中的位置指令而確定或估計(jì)的位置數(shù) 據(jù)。地理區(qū)域516可以例如由具有十字準(zhǔn)線的圓、矩形、正方形、六邊形或其它封閉區(qū)域,或 者由某些其它區(qū)別元素來(lái)示出,以便區(qū)分地理區(qū)域516和地圖502。
[0112] 在某些實(shí)現(xiàn)中,地理區(qū)域516可以指示移動(dòng)設(shè)備500被確定或被估計(jì)位于其中的 區(qū)域,并且該地理區(qū)域可以不一定以移動(dòng)設(shè)備500的實(shí)際當(dāng)前位置為中心。在這個(gè)例子中, 移動(dòng)設(shè)備500可以處于該地理區(qū)域內(nèi)偏離中心的位置。在另一個(gè)例子中,地理區(qū)域516可 以以移動(dòng)設(shè)備500的估計(jì)的當(dāng)前位置為中心。
[0113] 當(dāng)輕擊或選擇當(dāng)前位置對(duì)象514時(shí),移動(dòng)設(shè)備500可以使地圖視圖以地理區(qū)域516 為中心。在某些實(shí)現(xiàn)中,可以基于位置數(shù)據(jù)或提供位置數(shù)據(jù)的技術(shù)、系統(tǒng)或服務(wù)的準(zhǔn)確度或 精度,調(diào)整地圖的縮放級(jí)別。例如,當(dāng)移動(dòng)設(shè)備500不能接收GPS信號(hào)時(shí),可以由于較低的 準(zhǔn)確度而縮小地圖,并且使用接入點(diǎn)數(shù)據(jù)確定其位置。如果移動(dòng)設(shè)備500能夠使用GPS位 置數(shù)據(jù)確定其當(dāng)前位置,則可以由于較高的準(zhǔn)確度而放大地圖。在某些實(shí)現(xiàn)中,縮放級(jí)別可 以基于移動(dòng)設(shè)備500的速度(例如,可以在較高速度時(shí)縮小地圖,在移動(dòng)設(shè)備500不移動(dòng)時(shí) 放大地圖)。還可以使用準(zhǔn)確度或精度與速度的組合。
[0114] 如果用于檢索基于位置的數(shù)據(jù)的所有方法都失敗了(例如,當(dāng)移動(dòng)設(shè)備500不在 任何接入點(diǎn)的通信范圍內(nèi)時(shí),或者當(dāng)有效性檢查器366確定沒(méi)有存在區(qū)域能夠與移動(dòng)設(shè)備 500可連接的任何接入點(diǎn)相關(guān)聯(lián)時(shí)),并且沒(méi)有其它系統(tǒng)或服務(wù)可用于確定或估計(jì)移動(dòng)設(shè) 備500的當(dāng)前位置,則可以向用戶顯示一個(gè)錯(cuò)誤,并且不在地圖502上顯示地理區(qū)域。該錯(cuò) 誤可以例如包含將失敗和可能的一個(gè)或多個(gè)失敗原因通知給用戶的消息。
[0115] 可以選擇當(dāng)前位置對(duì)象514以便例如激活地圖502上的地理區(qū)域516的估計(jì)和顯 示,從而獲得去往或始于估計(jì)的當(dāng)前位置(即,地理區(qū)域516的形心)的路線,將移動(dòng)設(shè)備 500的估計(jì)的當(dāng)前位置發(fā)送給朋友(例如,使得該朋友可以到該相同位置),或者為估計(jì)的 當(dāng)前位置創(chuàng)建書(shū)簽。
[0116] 示例性系統(tǒng)體系結(jié)構(gòu)
[0117] 圖6是用于實(shí)現(xiàn)參考圖1 一 5所描述的特征和操作的示例性系統(tǒng)體系結(jié)構(gòu)600的 框圖。其它體系結(jié)構(gòu)也是可能的,包括具有更多或更少組件的體系結(jié)構(gòu)。在某些實(shí)現(xiàn)中,體 系結(jié)構(gòu)600包括一個(gè)或多個(gè)處理器602 (例如,雙核心]ntel? Xeon?處理器)、一個(gè)或多 個(gè)輸出設(shè)備604(例如,LCD)、一個(gè)或多個(gè)網(wǎng)絡(luò)接口 606、一個(gè)或多個(gè)輸入設(shè)備608(例如,鼠 標(biāo)、鍵盤(pán)、觸敏顯示器)、和一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì)612(例如,狀11、1?01、50狀1、硬盤(pán)、光 盤(pán)、閃存等)。這些組件可以通過(guò)一個(gè)或多個(gè)通信通道610(例如,總線)交換通信和數(shù)據(jù), 通信通道610可以使用各種硬件和軟件,以幫助實(shí)現(xiàn)組件之間的數(shù)據(jù)和控制信號(hào)的傳輸。
[0118] 術(shù)語(yǔ)"計(jì)算機(jī)可讀介質(zhì)"指參與向處理器602提供用于執(zhí)行的指令的任何介質(zhì),包 括但不限于,非易失介質(zhì)(例如,光盤(pán)或磁盤(pán))、易失介質(zhì)(例如,存儲(chǔ)器)和傳輸介質(zhì)。傳 輸介質(zhì)包括但不限于同軸電纜、銅線和光纖。
[0119] 如參考圖1 一 5所述,計(jì)算機(jī)可讀介質(zhì)612還可以包括操作系統(tǒng)614(例如, Mac OS? server, WilldOWS? NT server)、網(wǎng)絡(luò)通信模塊 616、數(shù)據(jù)庫(kù)接口 620、數(shù)據(jù)收 集模塊630、數(shù)據(jù)分發(fā)模塊640和位置計(jì)算模塊650。操作系統(tǒng)614可以是多用戶的、多處 理的、多任務(wù)的、多線程的、實(shí)時(shí)的,等等。操作系統(tǒng)614執(zhí)行基本任務(wù),包括但不限于:識(shí)別 來(lái)自設(shè)備606、608的輸入以及向設(shè)備606、608提供輸出;在計(jì)算機(jī)可讀介質(zhì)612(例如,存 儲(chǔ)器或存儲(chǔ)設(shè)備)上記錄和管理文件和目錄;控制外圍設(shè)備;以及管理一個(gè)或多個(gè)通信通 道610上的業(yè)務(wù)。網(wǎng)絡(luò)通信模塊616包括用于建立和保持網(wǎng)絡(luò)連接的各種組件(例如,用 于實(shí)現(xiàn)諸如TCP/IP、HTTP等通信協(xié)議的軟件)。數(shù)據(jù)庫(kù)接口 620可以包括到文件系統(tǒng)上的 一個(gè)或多個(gè)數(shù)據(jù)庫(kù)(例如,數(shù)據(jù)點(diǎn)數(shù)據(jù)庫(kù)360和位置數(shù)據(jù)庫(kù)372)的接口。可以按照分層文 件夾結(jié)構(gòu)來(lái)組織數(shù)據(jù)庫(kù),所述文件夾映射到文件系統(tǒng)中的目錄。數(shù)據(jù)收集模塊630可以包 括用于從通過(guò)接入點(diǎn)或通過(guò)其它通信通道(例如,蜂窩網(wǎng)絡(luò))無(wú)線連接到系統(tǒng)600的多個(gè) 移動(dòng)設(shè)備收集數(shù)據(jù)的組件。數(shù)據(jù)分發(fā)模塊640可以執(zhí)行用于向計(jì)算設(shè)備傳輸與無(wú)線通信網(wǎng) 絡(luò)的接入點(diǎn)相關(guān)聯(lián)的位置數(shù)據(jù)的各種功能,所述計(jì)算設(shè)備包括移動(dòng)設(shè)備108和110。位置計(jì) 算模塊650可以包括用于對(duì)從移動(dòng)設(shè)備108接收的位置執(zhí)行多遍分析的一個(gè)或多個(gè)組件。
[0120] 體系結(jié)構(gòu)600可被包括在能夠持有(host)數(shù)據(jù)庫(kù)應(yīng)用程序的任何設(shè)備中??梢砸?并行處理或?qū)Φ然A(chǔ)結(jié)構(gòu)或者在具有一個(gè)或多個(gè)處理器的單個(gè)設(shè)備上實(shí)現(xiàn)體系結(jié)構(gòu)600。 軟件可以包括多個(gè)軟件組件,或者可以是單段代碼。
[0121] 描述的特征可被有利地以可在可編程系統(tǒng)上執(zhí)行的一個(gè)或多個(gè)計(jì)算機(jī)程序?qū)崿F(xiàn), 所述可編程系統(tǒng)包括至少一個(gè)可編程處理器、至少一個(gè)輸入設(shè)備和至少一個(gè)輸出設(shè)備,所 述可編程處理器被耦接為從數(shù)據(jù)存儲(chǔ)系統(tǒng)接收數(shù)據(jù)和指令,并且向數(shù)據(jù)存儲(chǔ)系統(tǒng)傳輸數(shù)據(jù) 和指令。計(jì)算機(jī)程序是可以在計(jì)算機(jī)中直接或間接使用以便執(zhí)行某個(gè)活動(dòng)或帶來(lái)某個(gè)結(jié)果 的指令集。計(jì)算機(jī)程序可被以任何形式的編程語(yǔ)言編寫(xiě)(例如,〇b jective-C、Java),包括 編譯或解釋語(yǔ)言,并且可被以任何形式部署,包括作為獨(dú)立程序或作為模塊、組件、子例程、 基于瀏覽器的網(wǎng)絡(luò)應(yīng)用、或適合于在計(jì)算環(huán)境中使用的其它單元。
[0122] 舉例而言,用于執(zhí)行指令程序的適當(dāng)處理器包括通用和專(zhuān)用微處理器兩者,以及 任何類(lèi)型計(jì)算機(jī)的單個(gè)處理器或者多個(gè)處理器或核之一。一般地,處理器將從只讀存儲(chǔ)器 或隨機(jī)訪問(wèn)存儲(chǔ)器或這兩者接收指令和數(shù)據(jù)。計(jì)算機(jī)的基本元件是用于執(zhí)行指令的處理 器和用于存儲(chǔ)指令和數(shù)據(jù)的一個(gè)或多個(gè)存儲(chǔ)器。一般地,計(jì)算機(jī)還將包括用于存儲(chǔ)數(shù)據(jù)文 件的一個(gè)或多個(gè)大容量存儲(chǔ)設(shè)備,或計(jì)算機(jī)可操作地被耦接以與其通信;這些設(shè)備包括磁 盤(pán),諸如內(nèi)部硬盤(pán)和可移動(dòng)盤(pán);磁光盤(pán);和光盤(pán)。適用于有形地包含計(jì)算機(jī)程序指令和數(shù)據(jù) 的存儲(chǔ)設(shè)備包括所有形式的非易失存儲(chǔ)器,作為例子,包括半導(dǎo)體存儲(chǔ)器設(shè)備,諸如EPROM、 EEPR0M和閃存設(shè)備;磁盤(pán),諸如內(nèi)部硬盤(pán)和可移動(dòng)盤(pán);磁光盤(pán);以及CD-ROM和DVD-ROM盤(pán)。 處理器和存儲(chǔ)器可被輔以ASIC (專(zhuān)用集成電路)或被結(jié)合在ASIC中。
[0123] 為了提供與用戶的交互,這些特征可被實(shí)現(xiàn)在具有用于向用戶顯示信息的顯示設(shè) 備(諸如,CRT(陰極射線管)或LCD(液晶顯示器)監(jiān)視器)和用戶可以借以向計(jì)算機(jī)提 供輸入的鍵盤(pán)和指點(diǎn)設(shè)備(諸如,鼠標(biāo)或軌跡球)的計(jì)算機(jī)上。
[0124] 這些特征可被實(shí)現(xiàn)在包括后端組件(諸如數(shù)據(jù)服務(wù)器),或包括中間件組件(諸 如應(yīng)用服務(wù)器或Internet服務(wù)器),或包括前端組件(諸如具有圖形用戶界面或Internet 瀏覽器的客戶計(jì)算機(jī)),或它們的任何組合的計(jì)算機(jī)系統(tǒng)中。系統(tǒng)的組件可以由數(shù)字?jǐn)?shù)據(jù)通 信的任何形式或介質(zhì)(諸如,通信網(wǎng)絡(luò))來(lái)連接。通信網(wǎng)絡(luò)的例子包括,例如,LAN、WAN、和 形成Internet的計(jì)算機(jī)和網(wǎng)絡(luò)。
[0125] 該計(jì)算機(jī)系統(tǒng)可以包括客戶端和服務(wù)器??蛻舳撕头?wù)器一般彼此遠(yuǎn)離,并且通 常通過(guò)網(wǎng)絡(luò)交互。通過(guò)在各自計(jì)算機(jī)上運(yùn)行并且彼此具有客戶端一服務(wù)器關(guān)系的計(jì)算機(jī)程 序,產(chǎn)生了客戶端和服務(wù)器的關(guān)系。
[0126] 示例性移動(dòng)設(shè)備體系結(jié)構(gòu)
[0127] 圖7是移動(dòng)設(shè)備的示例性體系結(jié)構(gòu)700的框圖。移動(dòng)設(shè)備可以例如是手持計(jì)算 機(jī)、個(gè)人數(shù)字助理、蜂窩電話、電子輸入板、網(wǎng)絡(luò)設(shè)備、照相機(jī)、智能電話、增強(qiáng)式通用分組無(wú) 線業(yè)務(wù)(EGPRS)移動(dòng)電話、網(wǎng)絡(luò)基站、媒體播放器、導(dǎo)航設(shè)備、電子郵件設(shè)備、游戲控制臺(tái)、 或這些數(shù)據(jù)處理設(shè)備或其它數(shù)據(jù)處理設(shè)備中的任意兩個(gè)或更多個(gè)的組合。
[0128] 移動(dòng)設(shè)備可以包括存儲(chǔ)器接口 702、一個(gè)或多個(gè)數(shù)據(jù)處理器、圖像處理器和/或中 央處理單元704、以及外圍設(shè)備接口 706。存儲(chǔ)器接口 702、一個(gè)或多個(gè)處理器704和/或外 圍設(shè)備接口 706可以是分離的組件,或可被集成在一個(gè)或多個(gè)集成電路中。移動(dòng)設(shè)備100 中的各種組件可由一個(gè)或多個(gè)通信總線或信號(hào)線耦接。
[0129] 傳感器、設(shè)備和子系統(tǒng)可被耦接到外圍設(shè)備接口 706,以幫助實(shí)現(xiàn)多個(gè)功能。例如, 運(yùn)動(dòng)傳感器710、光傳感器712和接近(proximity)傳感器714可稱(chēng)接到外圍設(shè)備接口 706, 以幫助實(shí)現(xiàn)移動(dòng)設(shè)備的定向、光照和接近功能。位置處理器715(例如,GPS接收器)可連 接到外圍設(shè)備接口 706,以便提供地理定位。電子磁力計(jì)716 (例如,一個(gè)集成電路芯片)也 可連接到外圍設(shè)備接口 706,以便提供可用于確定磁北極方向的數(shù)據(jù)。
[0130] 照相機(jī)子系統(tǒng)720和光學(xué)傳感器722,例如,電荷耦合器件(CXD)或互補(bǔ)金屬氧化 物半導(dǎo)體(CMOS)光學(xué)傳感器,可用于幫助實(shí)現(xiàn)照相機(jī)功能,諸如,記錄照片和視頻剪輯。
[0131] 可以通過(guò)一個(gè)或多個(gè)無(wú)線通信子系統(tǒng)724來(lái)幫助實(shí)現(xiàn)通信功能,無(wú)線通信子系統(tǒng) 724可以包括射頻接收器和發(fā)射器和/或光學(xué)(例如,紅外線)接收器和發(fā)射器。通信子 系統(tǒng)724的具體設(shè)計(jì)和實(shí)現(xiàn)可取決于移動(dòng)設(shè)備要在其上操作的一個(gè)或多個(gè)通信網(wǎng)絡(luò)。例 如,移動(dòng)設(shè)備可以包括被設(shè)計(jì)為在GSM網(wǎng)絡(luò)、GPRS網(wǎng)絡(luò)、EDGE網(wǎng)絡(luò)、Wi-Fi或WiMax網(wǎng)絡(luò)、和 Bluetooth網(wǎng)絡(luò)上操作的通信子系統(tǒng)724。特別地,無(wú)線通信子系統(tǒng)724可以包括托管協(xié)議 (hosting protocol),從而設(shè)備可被配置作為其它無(wú)線設(shè)備的基站。
[0132] 音頻子系統(tǒng)726可耦接到揚(yáng)聲器728和麥克風(fēng)730,以幫助實(shí)現(xiàn)能夠使用語(yǔ)音的功 能,諸如語(yǔ)音識(shí)別、語(yǔ)音復(fù)制、數(shù)字記錄、以及電話功能。
[0133] 1/0子系統(tǒng)740可以包括觸摸屏控制器742和/或其它輸入控制器(一個(gè)或多 個(gè))744。觸摸屏控制器742可耦接到觸摸屏746或觸摸板。觸摸屏746和觸摸屏控制器 742可以例如使用多種觸敏技術(shù)中的任何一種來(lái)檢測(cè)接觸和移動(dòng)或其中斷,所述觸敏技術(shù) 包括但不限于電容、電阻、紅外線和表面聲波技術(shù),以及用于確定與觸摸屏746的一個(gè)或多 個(gè)接觸點(diǎn)的其它接近傳感器陣列或其它元件。
[0134] 其它輸入控制器(一個(gè)或多個(gè))744可耦接到其它輸入/控制設(shè)備748,諸如一個(gè) 或多個(gè)按鈕、撥動(dòng)開(kāi)關(guān)、拇指輪、紅外線端口、USB端口、和/或諸如觸筆之類(lèi)的指針設(shè)備。一 個(gè)或多個(gè)按鈕(未不出)可以包括用于揚(yáng)聲器728和/或麥克風(fēng)730的音量控制的上/下 按鈕。
[0135] 在一種實(shí)現(xiàn)中,將按鈕按壓第一持續(xù)時(shí)間可以解除觸摸屏746的鎖定;將按鈕按 壓比第一持續(xù)時(shí)間長(zhǎng)的第二持續(xù)時(shí)間可以接通或關(guān)閉移動(dòng)設(shè)備的電源。用戶可以定制一個(gè) 或多個(gè)按鈕的功能。觸摸屏746還可以例如用于實(shí)現(xiàn)虛擬或軟按鈕和/或鍵盤(pán)。
[0136] 在某些實(shí)現(xiàn)中,移動(dòng)設(shè)備可以呈現(xiàn)記錄的音頻和/或視頻文件,諸如,MP3、AAC和 MPEG文件。在某些實(shí)現(xiàn)中,移動(dòng)設(shè)備可以包括MP3播放器(諸如iPod?)的功能。因此移 動(dòng)設(shè)備可以包括與iPod兼容的針連接器。還可以使用其它輸入/輸出和控制設(shè)備。
[0137] 存儲(chǔ)器接口 702可耦接到存儲(chǔ)器750。存儲(chǔ)器750可以包括高速隨機(jī)訪問(wèn)存儲(chǔ)器和 /或非易失存儲(chǔ)器,諸如一個(gè)或多個(gè)磁盤(pán)存儲(chǔ)設(shè)備、一個(gè)或多個(gè)光學(xué)存儲(chǔ)設(shè)備、和/或閃存 (例如,NAND、N0R)。存儲(chǔ)器750可以存儲(chǔ)操作系統(tǒng)752,諸如,Darwin、RTXC、LINUX、UNIX、 0S X、WINDOWS或嵌入式操作系統(tǒng),諸如VxWorks。操作系統(tǒng)752可以包括用于處理基本系 統(tǒng)服務(wù)和用于執(zhí)行硬件相關(guān)任務(wù)的指令。在某些實(shí)現(xiàn)中,操作系統(tǒng)752可以包括內(nèi)核(例 如,UNIX內(nèi)核)。
[0138] 存儲(chǔ)器750還可以存儲(chǔ)通信指令754,以幫助實(shí)現(xiàn)與一個(gè)或多個(gè)附加設(shè)備、一個(gè) 或多個(gè)計(jì)算機(jī)和/或一個(gè)或多個(gè)服務(wù)器的通信。存儲(chǔ)器750可以包括:圖形用戶界面指令 756,以幫助實(shí)現(xiàn)圖形用戶界面處理;傳感器處理指令758,以幫助實(shí)現(xiàn)與傳感器有關(guān)的處 理和功能;電話指令760,以幫助實(shí)現(xiàn)與電話有關(guān)的處理和功能;電子消息收發(fā)指令762,以 幫助實(shí)現(xiàn)與電子消息收發(fā)有關(guān)的處理和功能;網(wǎng)絡(luò)瀏覽指令764,以幫助實(shí)現(xiàn)與網(wǎng)絡(luò)瀏覽 有關(guān)的處理和功能;媒體處理指令766,以幫助實(shí)現(xiàn)與媒體處理有關(guān)的處理和功能;GPS/導(dǎo) 航指令768,以幫助實(shí)現(xiàn)與GPS和導(dǎo)航有關(guān)的處理和功能;照相機(jī)指令770,以幫助實(shí)現(xiàn)與照 相機(jī)有關(guān)的處理和功能;磁力計(jì)數(shù)據(jù)772和校準(zhǔn)指令774,以幫助實(shí)現(xiàn)磁力計(jì)校準(zhǔn)。存儲(chǔ)器 750可以包括位置指令776,其可用于向接入點(diǎn)傳輸當(dāng)前位置,以及基于與移動(dòng)設(shè)備處于其 通信范圍內(nèi)的接入點(diǎn)相關(guān)聯(lián)的位置數(shù)據(jù),確定估計(jì)的當(dāng)前位置。存儲(chǔ)器750還可以存儲(chǔ)其 它軟件指令(未示出),諸如,安全指令;網(wǎng)絡(luò)視頻指令,以幫助實(shí)現(xiàn)與網(wǎng)絡(luò)視頻有關(guān)的處理 和功能;和/或網(wǎng)絡(luò)購(gòu)物指令,以幫助實(shí)現(xiàn)與網(wǎng)絡(luò)購(gòu)物有關(guān)的處理和功能。在某些實(shí)現(xiàn)中, 媒體處理指令766被劃分為音頻處理指令和視頻處理指令,以分別幫助實(shí)現(xiàn)與音頻處理有 關(guān)的處理和功能和與視頻處理有關(guān)的處理和功能。激活記錄和國(guó)際移動(dòng)設(shè)備標(biāo)識(shí)(IMEI) 或類(lèi)似的硬件標(biāo)識(shí)符也可被存儲(chǔ)在存儲(chǔ)器750中。
[0139] 上面列出的指令和應(yīng)用中的每一個(gè)可以對(duì)應(yīng)于用于執(zhí)行上述一個(gè)或多個(gè)功能的 一個(gè)指令集。這些指令不一定被實(shí)現(xiàn)為單獨(dú)的軟件程序、過(guò)程或模塊。存儲(chǔ)器750可以包 括附加的指令或更少的指令。另外,移動(dòng)設(shè)備的各種功能可以硬件和/或軟件實(shí)現(xiàn),包括以 一個(gè)或多個(gè)信號(hào)處理和/或?qū)S眉呻娐穪?lái)實(shí)現(xiàn)。
[0140] 已經(jīng)描述了本發(fā)明的若干實(shí)現(xiàn)。然而,應(yīng)當(dāng)理解,可以做出各種修改,而不脫離本 發(fā)明的精神和范圍。例如,知道位置的設(shè)備被稱(chēng)為能夠使用GPS。知道位置的移動(dòng)設(shè)備也可 以基于三角測(cè)量或其它技術(shù)。單元被在圖中表示為大體是矩形形狀。單元的實(shí)際形狀可以 改變。位置被描述為"圓"。本說(shuō)明書(shū)中使用的術(shù)語(yǔ)"圓"可以包括不一定是完美的圓、但是 是閉合的或具有封閉外觀的任何幾何形狀(例如,橢圓、正方形、凸或凹多邊形、或自由形 狀)。不是完美圓形的幾何形狀的半徑可以包括在該幾何形狀邊界上的各個(gè)點(diǎn)與幾何形狀 中心之間的平均距離。使用WiFi和WiMax網(wǎng)絡(luò)作為例子。也可以使用其它無(wú)線技術(shù)(例 如,蜂窩網(wǎng)絡(luò))。因此,其它實(shí)現(xiàn)處于所附權(quán)利要求的范圍中。
【權(quán)利要求】
1. 一種由計(jì)算機(jī)實(shí)現(xiàn)的方法,包括: 從均位于無(wú)線通信網(wǎng)絡(luò)的一接入點(diǎn)的通信范圍內(nèi)的多個(gè)第一移動(dòng)設(shè)備接收多組位置, 每組位置對(duì)應(yīng)于一個(gè)不同的接入點(diǎn); 基于接收到的對(duì)應(yīng)于每個(gè)接入點(diǎn)的一組位置的平均值,確定與該接入點(diǎn)相關(guān)聯(lián)的地理 位置; 將與每個(gè)接入點(diǎn)相關(guān)聯(lián)的地理位置分配給地理網(wǎng)格上的單元; 對(duì)于所述地理網(wǎng)格上的每個(gè)單元,基于接收到的對(duì)應(yīng)接入點(diǎn)的一組位置中的位置的數(shù) 目,對(duì)分配給該單元的各地理位置進(jìn)行評(píng)分,其中,與數(shù)目較多的一組位置相關(guān)聯(lián)的接入點(diǎn) 所對(duì)應(yīng)的地理位置得到較高的評(píng)分; 過(guò)濾分配給每個(gè)單元的各地理位置,包括保留該單元的具有最高評(píng)分的地理位置;和 將與所述接入點(diǎn)相關(guān)聯(lián)的地理位置和分配給在所述地理網(wǎng)格上與所述單元鄰近的單 元的接入點(diǎn)的地理位置提供給連接到所述接入點(diǎn)的第二移動(dòng)設(shè)備。
【文檔編號(hào)】G06F17/30GK104125638SQ201410245016
【公開(kāi)日】2014年10月29日 申請(qǐng)日期:2010年8月25日 優(yōu)先權(quán)日:2010年1月15日
【發(fā)明者】R·K·黃, M·菲斯徹, S·普拉潘 申請(qǐng)人:蘋(píng)果公司