利用现有无线电基站的定位服务的制作方法

文档序号:7637847阅读:471来源:国知局
专利名称:利用现有无线电基站的定位服务的制作方法
利用现有无线电基站的定位服务
祖旦 冃眾
诸如VHF全向无线电信标(VOR)等作为用于空中导航的基于地面的电子设 备的专用无线电定位系统被普遍使用。然而,由于与这些系统相关联的有限航程和 系统成本,所以这些设备并不适于民用。
全球定位系统(GPS)是另一种常用的专用导航系统并且解决了精确测量(纬 度、经度、海拔高度)的问题。这对于包括对当前位置绘制地图、确定路线指示的 起始点、寻找附近的公司和有吸引力的地点、以及其它基于位置的服务在内的许多 应用是有用的。然而,GPS通常在室内不能工作,并且在市内高楼大厦间(urban canyons)和在茂密的植物下有时也会不能工作。GPS接收机是单用途设备而并不 是计算设备上的标准装备。因此,大多数人并不随身携带GPS接收机。
蜂窝电话无线电塔被用于定位。然而,由于支持载波的定位受到载波不兼容 性和严格控制的影响所以可用性较差。此外,对于某些基于位置的服务,该定位精 确度太低。因此,需要没有上述局限和缺点的系统和/方法。
概要
以下内容提出了一个或多个实施例的简化概要以提供对这些实施例的某些方 面的基本理解。该概要并不是这一个或多个实施例的广泛综述,也无意标识这些实 施例的关键或重要要素或描述这些实施例的范围。其唯一的目的是以简化形式提出 所述实施例的某些概念以作为稍后提出的更具体描述的前序。
对GPS和蜂窝塔的一种替换方案是利用可从用户的计算设备检测到的现有无 线电基站的已知位置。 一个示例是Wi-Fi (802.11)无线电联网。通过检测一个或 多个Wi-Fi基站("接入点"),设备可以基于对这些基站位置的认知来计算其自 身的纬度、经度和/或海拔高度。所达到的精确度优于蜂窝塔定位系统并且接近GPS 的精确度。也可以类似方式利用其它无线电基站(例如,蜂窝电话塔、AM和FM 无线电台、TV台…)。
利用现有无线电基站意味着用户可以在没有GPS接收机的情况下计算该用户
自身的位置。通常,用户可利用已作为该用户的计算设备(例如,膝上型计算机、 PDA、蜂窝电话、手表。…)的一部分的现有无线电接收机,从而在增强可用性的
同时降低成本。此外,由于基站在GPS不能工作的情形中通常也是可检测的,因 此该技术可在GPS不能工作的情况下工作。
关于电子终端(例如,配备了无线电的设备)的位置信息以及位置信息向应 用程序的递送可通过web服务来提供,从而消除了用户执行繁重计算或负担数据 库的需求。作为替代或者除此之外,对离线应用程序,也可本地提供该服务。
各实施例描述了一种用于确定移动用户设备的位置场所的方法和/或系统。根 据一个特征, 一种用于传送位置信息的系统作为本地进程被包括在该用户设备上。 除此之外或者作为替代,该系统可利用确定位置信息的web服务。已知基站位置 的数据库可被用来确定用户设备位置。
应用程序可利用本地API或接入web服务来直接获得位置信息。作为替代或 者除此之外,位置信息可被抽象到虚拟的GPS类设备中且由并不明确了解所利用 的定位技术的本地应用程序来利用。因此,可仿真一通信端口并产生描述该位置信 息的遵照NMEA的流。
(诸)系统和/或(诸)方法可在用户设备上本地利用。各种实施例需要可检 测无线电基站的位置的数据库。该数据库可用各种方式来获得。用户可指定一区域, 并且已知基站的子集可被提供给该用户设备。作为替代或者除此之外,web服务器 可计算用户位置并递送用于该区域的已知基站的子集。根据另一实施例,用户设备 可根据需要周期性地向web服务查询位置更新并接收这些更新。根据又一实施例, 预测模块可基于先前的用户行为来预测用户将来的位置。
又一实施例是一种用于计算位置估计的不确定性并将该不确定性信息传送给 用户的系统和/或方法。该不确定性可以基于概率函数的和以及/或者基于实验数 据。取决于可用信息,可确定2D和3D不确定性两者。
根据另一实施例,基站和相关联的位置可被包含在数据库中并基于在这些设 备使用位置服务时从一个或多个设备接收到的信息来更新。基站信息可在例如其满 足或超过了某一特定置信度水平的精确度之后被包括在内。作为替代或者除此之 外,用户可根据精确度和/或置信度来分级。被确定为不可信的用户可被标记并且 不再能够提交信息和/或这些提交被隔离直至被一个或多个其他用户所验证。
为了实现上述和相关目的, 一个或多个实施例包括下文全面描述且特别地在 权利要求中指出的特征。以下描述和附图具体阐述了一个或多个实施例的某些说明性方面。然而这些方面仅表示可采用各个实施例的原理的各种方式中的一小部分, 并且所述实施例旨在包括所有这些方面及其等效方面。当结合附图考虑以下具体描 述时,其它优点和新颖特征将是显而易见的。
附图简述


图1示出了一种使得移动计算设备能够确定其位置的系统。 图2示出了一种用于确定移动计算设备的位置的系统。 图3示出了一种基于对基站信号的分析来确定位置信息的系统。 图4示出了一种采用了增强系统精确度和/或用户置信度的组件和技术的位置 确定系统。
图5示出了一种用于确定移动设备的位置的方法的流程图。
图6示出了用于使用https处理机和/或web服务来利用位置信息的应用程序
或浏览器的 一个示例性系统和消息流图。
图7示出了一种用于使用http处理机和/或web服务来利用位置信息的应用程
序或浏览器的方法的流程图。
图8示出了一种通过用户设备上的API来访问位置信息的系统。
图9示出了一种利用在此所公开的(诸)系统和/或(诸)方法的高层示图。
图IO示出了一种利用人工智能的用于确定位置的系统。
图11示出了一种可用于执行所公开的实施例的计算机的框图。
图12示出了一种可用于执行所公开的实施例的示例性计算环境的示意性框
详细描述
现在将参照附图对本发明的各个实施例进行说明,在全部附图中,使用相同 的标号来表示相同的要素。在以下描述中,出于解释的目的,阐述了许多具体细节 以提供对一个或多个方面的全面理解。然而显然这各个实施例也可在没有这些具体 细节的情况下来实践。在其它情形中,以框图的形式示出了公知结构和设备以便于 描述这些实施例。
如在本申请中所使用的,术语"组件"、"模块"、"对象"、"系统"等 旨在表示与计算机有关的实体,它们可以是硬件、硬件和软件的组合、软件、或者 执行中的软件。例如,组件可以是但并不限于,在处理器上运行的进程、处理器、
对象、可执行文件、执行线程、程序、和/或计算机。作为示例,服务器上运行的 应用程序和服务器这两者都可以是组件。 一个或多个组件可驻留在进程和/或执行 的线程内,并且组件可以位于一个计算机上和/或分布在两个或多个计算机之间。
措辞"示例性"在此被用于表示用作示例、实例、或说明。在此被描述为"示 例性"的任何方面和设计并不一定被解释为优选或优于其它方面或设计。
此外, 一个或多个实施例可使用生成用以控制计算机实现在此所公开的实施 例的软件、固件、硬件或其任意组合的标准编程和/或工程技术而被实现为方法、 装置或制品。如在此所使用的术语"制品"(或者,"计算机程序产品")旨在包 括可从任何计算机可读设备、载波、或介质访问的计算机程序。例如,计算机可读 介质可包括但并不限于磁存储设备(例如,硬盘、软盘、磁带...)、光盘(例如,
压縮盘(CD)、数字通用盘(DVD)...)、智能卡、和闪存设备(例如,卡、棒)。 另外,应该认识到的是正如在发送和接收电子邮件或访问诸如因特网或局域网 (LAN)等网络时使用的,载波可被用来携带计算机可读数据。当然,本领域的 技术人员将认识到可对该配置作出许多修改而不会背离所公开的实施例的范围和 精神实质。
基于人工智能的系统(例如,显式和/或隐式受训分类器)可根据此后所述的 一个或多个方面用于执行推断和/或概率确定和/或基于统计的确定D如在此所使用 的,术语"推断" 一般表示从通过事件和/或数据所捕捉到的一组观察结果来推理 或推断系统、环境和/或用户的状态的过程。推断可用于例如标识特定上下文或动 作、或可生成在各状态上的概率分布。推断可以是概率性的——即基于对数据和事 件的考虑来计算在所感兴趣的状态上的概率分布。推断还可以指用来从一组事件和 /或数据构建更高层的事件的技术。这种推断导致根据一组观察到的事件和/或存储 的事件数据来构造新事件或动作,而不论这些事件是否在邻近的时间上相关,也不 论这些事件和数据是来自一个还是几个事件和数据源。各种分类方案和/或系统(例 如,支持向量机、神经网络、专家系统、贝叶斯信任网络、模糊逻辑、数据融合引 擎...)可用于执行结合该主题实施例的自动化和/或推断的动作。
首先参照图l,示出的是使得移动计算设备能够确定其位置的系统100。该移 动计算设备可以是任何移动、便携、或计算设备。系统100包括外部环境组件102 和分析组件104,这两者都可在诸如移动计算设备等用户设备上。作为替代或除此 之外,外部环境组件102可位于用户设备上,而分析组件104位于诸如web服务 等外部设备上。
外部环境组件102适用于扫描该移动设备的局部区域(如虚线区域所示出的)
并执行对位于该可检测范围内的所有基站的搜索。取决于该设备,基站可以是Wi-Fi (802.11)接入点、蜂窝塔、AM无线电台、FM无线电台、TV台、或者来自具有 已知位置的基站106的任意其它类型的无线电传输,其中包括这些的组合或者发射 电磁波、声波、或可用基站检测和标识的任意信号的任何基站。基站可以是移动的, 诸如基站108,只要这些基站的位置可以在与其被定位时基本相近的时间被确定即 可。外部环境组件102还适用于测量从检测到的每个基站106或108接收到的检测 信号的强度或其它质量。应该理解的是,可检测到多个基站并且本发明并不受到所 检测到的基站的数目的限制。
基于从扫描到的基站得到的信息,外部环境组件102与确定已检测到哪些基 站的分析组件104通信或接口。例如,分析组件104可具有包含所有已知基站的位 置(经度、纬度、海拔高度)的数据库或查找表。分析组件104可将从外部环境组 件102接收到的信息与已知基站相比较并且确定或计算外部环境组件102的位置。 分析组件104将该位置信息传送给外部环境组件102以及相关联的移动设备的用 户。
也被称为"无线电定位系统"的系统100可利用包括可被用来计算位置的信 息的数据库和/或执行对该数据库的自我维护。该数据库的内容取决于用于定位的 无线电系统和/或电子终端的类型。
在一个实施例中,分析组件104计算用户设备位置,并且这种计算是在同样 维护基站坐标S的数据库的用户设备上执行的。在另一实施例中,基站的数据库是
在网络可访问的数据库中维护的,且用户设备与该数据库通信以获得基站坐标。在
又一实施例中,位置计算组件和数据库两者都存在于网络可访问位置中。以这种方
式,用户设备通过网络发送其检测到的基站数据,而该网络用计算出的位置作出响
应。将基站数据库保留在网络服务器上减轻了用户设备将其自己的存储器用于这些
数据的需求和/或可访问该数据库的最新版本。然而,如果用户设备没有网络接入, 则其应有其自己的这些数据的本地副本。
如果数据库驻留在用户设备上,则在该设备连接至(暂时或永久地)网络时 该设备可有多种方式用来从该网络获得数据库信息。根据一个实施例,用户可手动 地指定数据库中用于下载的子集。该子集可包括用户希望要被定位的地理区域。根 据另一实施例,在该设备被连接到网络的同时该系统自动地计算用户的当前位置, 并下载数据库中以当前所计算出的位置为中心的子集。根据另一实施例,只要用户
设备能够获得网络接入就抓住机会连接至该网络并下载数据库中以该设备的当前 位置为中心的子集。另一实施例是该设备使用预测技术来推断将来用户会位于什么 地方并抓住机会下载数据库中以该预测的位置为中心的子部分。
系统100还适用于使用户能够将这种用户位置传送给另一用户。例如,社交 应用程序(例如,即时消息机)可包含已预先允许用户确定、获得或计算他们的位 置的"密友"或"联系人"的列表。可包括一邻近性警报,其中如果一 "联系人" 在例如用户的一英里内则通知该用户。用户可确定是否想要与该"联系人"通信, 并发起该通信和/或请求会面时间/地点。系统100可基于已知位置确定用户和"联 系人"可在其会面的感兴趣的地点。
系统100还可提供诸如资产和人的实时跟踪等基于位置的服务。可基于用户 当前位置、位置历史、和/或所预料的将来位置进行包括目标广告在内的信息递送。
对于特定用户较为重要的是,系统100可通过各种媒体的增强的存在和/或位置标
签来提供实时校准。
图2示出了用于确定移动计算或用户设备的位置的系统200。本领域的普通技 术人员将会理解的是,在此讨论的组件和/或模块可以与用户设备、和远程站相结 合的用户设备、和/或和远程站及集中网络相结合的用户设备相关联。
系统200包括检测或接收与一个或多个基站206和208相关联的信号的外部 环境组件202。外部环境组件202与至少部分地基于从外部环境组件202接收到的 信息来确定用户设备的位置的分析组件204接口。为了有助于位置信息,外部环境 组件202可包括检测组件210、测量组件212、以及通信组件214。
检测组件210适用于基于所接收的或获得的信号来检测该用户设备本地附近 的基站。对基站信号和信息的搜索或收集可以是持续的、周期性的、或按需的,并 且可以由用户动作、由系统200自发地、和/或应远程服务的请求来发起。例如, 检测组件210可扫描基站的通信环境。扫描的结果可以是一组基站标识符,并且可 包括接收特性。例如,对Wi-Fi接入点的扫描得到每个检测到的接入点的MAC地 址并可包括每个检测到的接入点的信号强度。对蜂窝塔的扫描将导致接收或获得蜂 窝塔标识以及每个检测到的蜂窝塔的相应信号强度。除了信号强度之外或作为信号 强度的替代,可获得或接收接收特性。 一个备选接收特性的示例是通过对基站多次 扫描计算出的基站的检测概率。
检测组件210获得的信息可被传送给可计算接收特性的测量组件212,接收特 性可以是基站的检测概率的度量。该检测概率可通过对基站执行反复扫描并计算一
特定基站被检测到的次数与总扫描次数之比来测量。应该理解的是,接收特性可以 是信号强度和检测概率,并且各自都可被用作位置确定系统的一部分,但是作为信 号强度的替代或除其以外,还可使用其它检测概率和/或接收特性。所有这些修改 旨在为本说明书和所附权利要求的一部分。
从检测组件210和测量组件212获得的信息由通信组件214发送至分析组件 204。通信组件214适用于向分析组件204发送信息和从其接收信息。该信息可以 周期性地、持续地、或应请求地发送至通信组件216/从其接收。
现在参照图3,示出的是基于对基站信号的分析来确定位置信息的系统300。 该系统包括与分析组件304接口的外部环境组件302。外部环境组件302可从一个 或多个基站(固定的106和/或移动的108)接收或获得信号。这些信号由检测组件 310检测、由测量组件312测量、并由通信组件314传送至分析组件304。应该理 解的是外部环境组件302和分析组件304可以在分开的设备(例如,用户设备或 web服务)上、在同一设备上(例如,移动用户设备)。
例如,应用程序可以调用本地应用程序接口 (API)或接入web服务以直接获 得位置信息。作为替代或除此之外, 一旦己经计算出或接收到位置信息,就将其抽 象到虚拟的GPS类设备中并由本地应用程序来利用,而无需该位置应用明确了解 在此所公开的定位技术。例如,在此描述的系统和/方法可仿真通信端口并产生描 述位置信息的遵照NMEA的流。消费NMEA定位数据的现有应用程序(例如,大 多数访问GPS的应用)将有新的位置数据源供利用。
分析组件304通过通信组件314与位于分析组件304上的接口组件316之间 的交互来接收基站标识符和接收特性。应该理解的是,如果外部环境组件302和分 析组件304两者都位于移动用户设备上,则通信组件314和接口组件316可以是在 外部环境组件302与分析组件304这两个组件之间提供通信接口的一个组件。所有 这些变型都被认为是本说明书和所附权利要求的一部分。
分析组件还可包括标识符组件318和计算组件320。标识符组件318可包括数 据库、査找表、查询分析、或基于外部环境组件302接收到的基站标识符来标识特 定基站的任何手段。
数据库的内容取决于用于定位的无线电系统和/或电子终端的类型。该数据库 应至少包含用于对用户设备的位置场所进行确定、计算、获得等所需的最少量信息。 例如,该数据库应包含可唯一地标识无线电信标或电子终端的信标或电子终端信 息。该数据库中应包括纬度、经度和/或海拔高度信息。位置不确定性信息可以被
包括在内并且可以是简单球面不确定性(simple spherical uncertainty)和/或位置误 差的具体描述。数据库中还可包括位置置信度信息。位置置信度信息是被用来评估 对信标和/或终端标识可用的位置信息的相对置信度的数据集合。位置置信度还可 以、或者作为替代地包括诸如最后更新的数据、最后报告的数据、报告的数目、缺 席(absence)报告(不包括该实体但包括与其密切相关的实体的报告)的数目、 和/或错误报告的数目等信息。
基站数据可以是本地的(在用户设备上)和/或在该设备之外的,或者是一组 合。如果用户选择在本地用户设备上运行该服务,则该设备获得基站位置的数据库 的至少一部分。获得该信息的一个示例是用户在利用该服务的同时手动地指定该用 户预期将在或停留的区域,例如,大西雅图地区、金恩郡或华盛顿州。
指定区域的另一示例是至少使用Web服务一次来计算用户当前位置。该服务 可递送基站数据库中所计算出的用户位置周围给定半径范围(例如,10英里、50 英里、100英里)的子部分。当网络可用时,用户设备可周期性地向Web服务查 询位置更新。除此之外或作为替代,当用户移到另一区域或移到靠近给定半径范围 的边缘时,用户可请求另一计算出的位置和/或基站的子部分。该设备还可在检测 到没有包括在接收到的数据库信息的子集中的基站时自动请求信息。以这种方式, 该设备推断出它已移出给定半径范围之外并且需要附加的或备选基站信息。Web 服务可用基站数据库中要被递送至该用户本地设备的新的子部分作出响应。另外, 当提供了新的基站信息时,该设备或Web服务可从设备中删除或取消先前的基站 信息子集,从而节省了用户设备上的存储器资源。
为了预期将来的需求,预测模块可基于过往行为来预测用户将来的位置。用 户设备用这些预测可自动和/或自发地获得数据库中覆盖预期用户会去的地方的新 的子部分。以这种方式,可采用机器学习和推理模块来推断这些用户动作。
分析组件304还包括利用基站标识符和接收特性来确定用户设备或接收机的 位置的计算组件320。数学公式可被应用于接收特性以三角测量用户设备的位置。 例如,可使用加权平均来计算用户设备位置并可基于以下等式来计算
<formula>formula see original document page 12</formula>
在上式中,^是计算出的位置坐标向: 纬度
工的示例为
x
、"
'纬度'
以及经度。i,坐标是检测到的基站的位置,其数目为N。权重w,是根据相应 、海拔高度^
的基站接收特性计算出的。例如,如果接收特性是信号强度&则权重可以是 w,=<,其中W是被选择用以基于分析来最大化精确度的指数,该分析可以是理论
或实验分析。
现在参照图4,示出了采用增强系统精确度和/或用户置信度的组件和技术的 位置确定系统400。所示出的与系统400相关联的示例性组件是任选的。另外,任 选的系统400并不一定采用示出的所有组件,并且一个或多个组件可在任意配置下 用于系统400。所有这些变更或修改都落在本说明书和所附权利要求书的范围内。 系统400与参照图1、 2、和3示出和描述的系统相类似。
在某些情形中,向与移动设备相关联的用户提供对计算出的位置的精确度的 估计是有用的。不确定性组件422向用户提供了这种估计。例如,如果外部分析组 件402 (或检测组件410)仅检测到一个基站406或408,则不确定性组件422可 将基站406或408周围的位置的概率分布建模为其平均值与基站406或408坐标重 合的高斯分布。该高斯分布与无线电信号的传播特性有关,并经过数据库中的数据 点的固有精确度修改。该概率函数的等式可表示为<formula>formula see original document page 13</formula>在以上等式中,n是位置向量的维数。对于2维的情形,11=2并且^被设为等 、它是单个检测到的基站406或408的位置。协方差矩阵Z支配空间中概
率的展开范围。使得该展开范围在平均值周围发散地对称的合理设置是
<formula>formula see original document page 13</formula>例如,对于Wi-Fi或802.11基站,(7的合理值是30米。该情形中
相应的均方根(rms)误差是V5o",这是作为对系统400的精确度的指示报告给用 户的易于理解的值。
当外部分析组件402 (或检测组件410)检测到多个基站时,位置的概率分布 函数可由不确定性组件422建模为高斯混合并且可表示为<formula>formula see original document page 14</formula>其中N是检测到的基站的数目,而w',是在计算组件420所利用的三角测量公式中 使用的权重的归一化形式,可表示为
且A(工)是基站Z的高斯分布<formula>formula see original document page 14</formula>
其中,A是基站Z的位置而Z,是基站/的协方差矩阵。
高斯混合是概率"峰(hump)"之和,其中每一个峰表示一个检测到的基站。 峰的高度受到对其相应的基站所计算的权重的控制,该权重往往在较高加权的基站 附近放置更多概率集聚。高斯混合的平均值在数学上等于经三角测量的位置,它可
被表达为
高斯混合的协方差可以计算为
以上协方差矩阵的特征值和特征向量描述了计算出的位置周围实际位置具有 特定的存在概率的空间。虽然这几乎完全描述了计算出的位置的不确定性,但有时
也可能希望改为提供rms误差的简单球面不确定性。如果协方差矩阵的"个特征值 是^^,.j。,则可作为报告给用户的合适的精确度值的rms误差可被表示为
如不确定性组件422所计算出的位置信息的不确定性可被用来通知用户已计 算出的该用户的位置有多精确。例如,用户设备的显示器上的图标可改变颜色、形 状、大小等以向用户提供可感知的不确定性和/或不确定性的快速指示。作为替代 或除此之外,系统400可在用户显示器的地图上画出不确定性边界以指示置信度区 域的大小。
用户设备可提供各种类型的用户界面。例如,用户设备可提供图形用户界面 (GUI)、命令行界面等。例如,可呈递一 GUI以向用户提供用以加载、导入、
-exp
读取一个或多个不确定性指示和/或位置的区域或手段,并可包括呈现其结果的区 域。这些区域可包括已知的文本和/或图形区域,其中图形区域包括如编辑控件、 组合框、单选按钮、复选框、按钮、和图形框等对话框、静态控件、下拉菜单、列 表框、弹出菜单。另外,也可使用诸如用于导航的垂直和/或水平滚动条以及确定 区域是否将会可见的工具栏按钮等便于呈现的设施。
用户可通过诸如鼠标、滚动球、小键盘、键盘、笔和/或语音激活等各种设备 来与这些区域交互以选择和提供信息。通常,诸如按钮或键盘上的回车键等机制可 被用来随后输入信息以发起信息输送。然而,应该认识到的是,这些实施例并不如 此被限制。例如,仅仅高亮一复选框就可发起信息输送。在另一示例中,可采用命 令行界面。例如,命令行界面可通过提供文本消息来提示(例如,通过显示器上的 文本消息和音频音)用户输入信息。然后用户可提供诸如对应于界面提示中预期的
或实际已知的用户区域(例如,大克里夫兰地区、Cuyahoga郡,和/或俄亥俄州) 的字母数字输入或对提示中提出的问题的答案等合适的信息。应该理解的是,命令 行界面可以与GUI和/或API结合采用。另外,命令行界面可与具有有限图形支持
和/或低带宽通信信道的硬件(例如,视频卡)和/或显示器(例如,黑白、和EGA) 来使用。
与系统400相关联的另一任选组件可以是能更新标识符组件418 (例如,数据 库、查找表、查询分析或标识特定基站的任意手段)的训练组件424。随着新的基 站被添加、移动、或停止服务,标识符组件418所定位和利用的基站数据库有时会 变得过时。当基站检测被发送到该网络数据库时,能够分析这些提交以更新数据库。 这些更新有助于保持标识符组件418最新,而无需数据库维护员和/或管理员一方 提供任何显式交互或更新。
根据一个实施例,训练组件424分析各组基站提交。所提交的基站中的一些 是系统400已知的,而其它是未知、未验证、和/或未识别的。这些未知基站可用 针对已知基站计算出的位置来标记并被添加至数据库。计算出的位置基于该信息可 能是不精确的,因为它们是基于单次观测或检测计算出的。这些先前未知的基站可 以被标记以指示它们是基于一次、两次、三次等观测的且可能是不精确的。当这些 基站被其它用户检测到或看到时,它们的位置可被更新。例如,该更新可包括针对 所有观测(检测)计算出的所有位置的中间位置。 一旦这些先前未知基站的位置已 经超过了特定的、预定的置信度水平时,它们可在通用数据库中被激活并可被用于 定位分析。除了寻找新基站以外或作为替代,分析传入数据可允许数据库纠正和
或删除错误条目,并可结合以下讨论的错误数据组件426来使用。
系统400包括适用于对错误或正在提供错误信息的基站和/或用户进行标识、 删除、隔离、标记等的错误数据组件426。基站位置的数据库可能包含出于偶然或 出于恶意的错误基站位置。以上讨论的三角测量算法可被"硬化"以通过标记错误 条目和/或将其从数据库中移除来避免使用这些所标识的错误位置。根据一个实施 例,可对从数据库返回的所有检测到的基站的位置进行检查。在三角测量之前,可 找到基站中全部位于彼此的真实范围之内的最大子集。该范围可被计算为典型基站 的预期检测范围的两倍。利用预期检测范围的两倍是因为用户设备将不能检测到相 隔大于该距离的两个基站。基站中在相互合理范围内的最大子集会消除随机的离群 基站。
根据另一实施例,减少伪基站结果可通过推理用户的动态来实现。用户的速 度是有限的(基于物理限制),因此计算出的在由最大速度和自最后一次计算出的 位置起经过的时间所强加的"泡"以外的位置可被除去。例如,用户物理上不能检 测到南达科他的一个或多个基站并且在半个小时后检测到佛罗里达的一个或多个 基站。错误数据组件426可基于包括位置、速度、时间等在内的多个因素来确定如 从最后一个定位的、检测到的、看到的基站推导出的可能的基站位置。
如上所讨论的,由用户在使用系统400的正常过程中提交的基站数据可被用 于更新基站位置的数据库,并且该信息还可被记入日志或保留用于将来的分析。作 为替代或除此之外,系统400可检测未知的信标并通过时间和反复的相关来确定这 些信标的位置和其它相关信息并将它们添加到数据库。检测不到某一特定信标而检 测到附近的信标可以是指示一信标已经移动、变为不可操作等的信号。在适当的时 候,该数据点可被标记并且可从活动数据库中移除。不论是出于偶然还是故意,提 交的一部分可能包含实际没有检测到的基站标识符。系统400可通过检查基站位置
数据库来自动检测离群者。如果确定特定用户正在提交被标记为离群者的基站或者 如果该用户信息的精确度在一可接受水平以下,则该用户可被标记为潜在恶意的并 且所有将来的提交可被忽略、隔离、标记等。例如,该用户交互可被保留在一日志 中,或者跟踪组件428可保存与这些基站组相关联的信息以及与提交这些信息的用 户有关的信息。由于能够保存历史数据,所以这些数据可被用于改善基站数据和检
观l]恶思用户。
应该理解的是,以上关于图1、 2、 3禾n 4讨论的系统100-400的诸多部分可以 用替代的组件、模块、系统等来模块化地替换。例如,三角测量计算可以用可能更
为适合用户任务的不同类型的三角测量计算来替换。系统中可起"插件"模块功能 的部分可包括无线电提供者。如提到的,该系统可用不同类型的无线电,例如Wi-Fi
或802.11、蜂窝塔、FM、 AM、 TV等来工作。每种类型的无线电被认为是可被替 换或"插入"到该系统中的不同提供者。
可以模块化地替换的另一组件是与计算组件相关联的三角测量。其它类型的 三角测量可能在精确度、计算速度、获得作为输入的不同种类的无线电的能力等方 面更适合用户任务。
作为替代或除此之外,取决于情形,其它类型的不确定性估计也可能是适合 的。例如, 一些不确定性组件可考虑用户的速度、加速度、方向等。因此,如果用
户正在已知方向上以某一特定速度移动,则不确定性组件可将该分析作为因素考虑 到计算当中。
现在参照图5,示出的是用于确定移动设备的位置场所的方法500的流程图。
虽然出于简化解释的目的,在此所述的方法被显示和描述为一连串动作,但应该理
解和认识到的是这些方法并不受动作顺序的限制,因为一些动作可根据这些方法以
不同顺序发生和/或与在此显示和描述的其它动作同时发生。例如,本领域的技术 人员将理解和认识到,方法可以替换性地被表示为诸如状态图中的一连串相关联的
状态或事件。此外,并不是需要所有示出的方法来实现以下方法。
方法500在502处开始,其中执行或进行对无线电基站的搜索。无线电基站 可以是Wi-Fi (802.11)接入点、蜂窝塔、AM无线电台、FM无线电台、TV台或 来自基站的任何其它类型的传输。这些基站可能己有已知位置且可以是移动的,只 要有在检测到基站时标识基站的位置的适当机制。
该方法在504处继续,其中接收基站的标识符和接收特性。例如,对Wi-Fi 接入点的扫描可得到每个检测到的接入点的MAC地址和信号强度。对蜂窝塔的扫 描可得到蜂窝塔标识和相应的信号强度。接收特性可包括信号强度、对基站的检测 概率的度量等。检测概率可通过对基站进行反复(持续或周期性的)扫描并计算检 测到特定基站的次数占扫描总次数之比来测量。
在506处,可使用基站标识符和接收特性来计算接收机或用户设备的位置。 例如,可使用三角测量或类似的算法来基于检测到的基站及其信号强度来计算用户 位置。还可包括的有计算位置的不确定性估计的技术。
计算不确定性的一个示例性方法是基于概率函数的和。每个检测到的基站可 引起(纬度、经度)空间中的2D概率"峰"。对这些峰求和得到概率分布,它可
以被概括为均值(纬度、经度)和/或该均值附近的置信度区域。置信度区域的大 小即报告的不确定性。该方法通过在计算中包括海拔高度维度可以被扩展为提供 3D定位不确定性。
计算不确定性的另一示例性方法可基于实验数据。例如,可根据有多少无线 电基站被检测到来构造给出所公开的技术的实际测得的精确度的表。当用户检测到 一定数目的基站时,可在该表上査找所期望的精确度。不同的表可根据实际已经检 测到了哪些基站、哪个可被报告为不确定性等来给出实际测得的精确度。
在用户利用该服务时,它们发送的基站数据可被记录以更新和生长基站数据
库。 一些例如配有GPS接收机的用户可将纬度、经度和/或海拔高度数据与它们的
基站数据一起发送。该信息可被直接用来更新基站位置的数据库。相同的用户或其 他用户可在检测到的基站列表中进行发送,这些基站中的某一些可被包括在数据库 中,而某一些先前是未知的、未标识的、或没有包括在该数据库中。该服务可使用 它所知道的基站来计算用户的位置。然后,该服务可将该计算出的位置附加到该未 知基站并将其添加到数据库。这些基站可在具有或没有指示它们未经确认的标志的 情况下被直接添加,和/或可以仅在通过多个用户的检测达到一置信度水平之后才 被添加。不管数据库中的错误如何都可维持计算出的位置的精确度(被称为反欺 骗)。额外地或者除此之外,某些用户在其被确定可能正在发送假信息时可被标记。
从公开的系统100-400得到的位置信息可以用多种方式被递送到多个应用程 序,其中一些方式将在以下进行讨论。应该理解的是以下递送系统和/或方法的示 例性描述是出于说明性目的而讨论的,并且也可利用其它递送装置且其落在说明书 和所附权利要求书的范围内。
在此公开的系统和/或方法确定的位置信息可通过web服务来递送,从而免除 了消费者平台要有复杂的软件和/或详尽数据库的职责。使用所公开的定位服务的 应用程序可将无线电信号信息或其它合适信息采集到正被分析的该电子终端。该信 息可被发送到web服务,由其将该信息解析为位置并将所请求的信息提供给系统 和/或用户。
一个示例性实现是SOAP/XML API (简单对象访问协议/可扩展标记语言应用 程序接口),其中关键方法可以是GetPostion (获取位置)。GetPosition可接收、 获得、或确定包括信标或电子终端类型和/或信标或电子终端数据数组在内的参数。 数组结构的成员可根据所用的信标或终端的类型而变化。 一般而言,成员可包括标 识符和/或作为可描述该信号的质量的分量的质量。质量分量的示例可包括信号强
度和/或检测频率。
该方法可返回包括一组建议的和任选的描述位置的数据字段的位置对象。该
位置对象可具有至少以下建议的字段纬度(Latitude)、经度(Longitude)、修 补时间(TimeOffix)、和/或坐标(Coordinate)参考系统。它还可具有至少以下 任选字段海拔高度(Elevation)、不确定性(Uncertainty)描述和大小(可以是 简单球面误差、rms误差、和/或其它更加详尽的不确定性描述)。
图6示出了使用https处理机和/或web服务来利用位置信息的应用程序或浏 览器的示例性系统和消息流图。系统600包括第三方应用程序602、本地无线电位 置组件604、浏览器606、经授权的网站服务器608、以及具有定位能力的web服 务。这种系统使得浏览器能够容易地与服务器交互以获得用户的位置信息并递送经 位置增强的内容。浏览器、或其它软件可收集无线电(或其它电子终端)信息(标 识和/或质量)并以URL (统一/通用资源定位符)形式来格式化该数据以发送到 http/https处理机。 一个示例可以是实际数据在请求正文中的
https:〃locateme.com RadioTvpe=802,:n&RadioIDl=xxY&C)ualitv]=0.2&RadioID2=x x2&Oualitv2二0.4或者http:〃locateme.com RadioInfo-true。 http/https处理机可随后用 恰当的位置信息作出回复从而使浏览器或软件可利用该位置信息。
现在参照图6和7,以下内容描述了允许浏览器向用户递送位置专属信息同时 又防止未授权方发现该用户的确切位置的实现。它还允许第三方应用程序启动该浏 览器从而以一安全的方式显示该用户的位置。
在702处,由第三方应用程序发起对位置的请求D在704处,该第三方应用 程序启动该浏览器并传递指示请求位置的URL。这种URL的一个示例可以是 http:〃locateme locateme=true。在706处,例如locateme.com服务器可识别该URL 并向浏览器发送开始受保护位置事务的命令。在708处,该浏览器和/或软件可从 该本地设备收集无线电信号。
方法700在710处继续,其中安全https url用所需要的无线电信息格式化并被 发送到具有https处理机的web服务器。例如,该URL可以采用更多数据位于正 文中的以下格式
https:〃locateme.com RadioTvpe=802.11&RadioIDl=xxv&Oualitvl=0.2 或 http:〃locateme locateme=true。在712处,服务器可在受保护链路上用该请求位置 信息作出回复。在714处,浏览器可利用该数据来请求自定义内容。取决于通信协 议和/或偏好,该请求和以下请求可以是或者也可不是在受保护链路上。
图8示出了通过本地机器或用户设备上的API来访问位置信息的系统800。 API模块802可与用作获得各种源的位置信息的代理的位置模块804接口 。这些位 置信息可包括无线电位置和/或其它有用的电子终端。如果有多个位置源可用,则 将基于作出调用的软件的要求和所获得的位置的质量来选择最恰当的一个。位置代 理模块804还可利用web服务以获得位置信息。
API模块802可利用各种技术(例如,COM)来获得位置信息。目的是为了 允许应用程序以灵活的方式来查询位置。例如GetPosition方法可返回与以上讨论 的位置(Position)模块相类似的Position (位置)对象。本地GetPosition方法可采 用各种任选参数。以下将讨论一些示例性任选参数。
Provider (提供者)是可指定要利用的一个或多个位技术(例如,Wi-Fi、无线 电、GPS...)的参数。还可指定对各种定位技术的偏好。如果该任选字段不存在, 则位置代理模块804可基于其它输入参数和/或可用位置的质量来选择当前可用的 最适合服务。
其它示例性参数包括精确度、时效、和/或响应时间。如果设置了精确度,则 位置代理模块804可试图满足该输入的精确度水平。时效表示其中位置代理模块 804可高速缓存先前的请求以改善性能的所获取的位置的最大年限。如果设置了响 应时间,则允许位置代理模块804选择恰当的方法以试图满足所需的响应时间。
在此公开的系统和/或方法可利用模拟NMEA导航设备。从无线电定位得到的 位置信息可在通信端口上通过NMEA流被递送到应用程序。这允许被设计成利用 传统GPS系统的任何应用程序利用在此公开的无线电定位。所得到的位置可被格 式化为与NMEA标准兼容的串,并被流传送到仿真的通信端口。由于不是NMEA 语句的所有字段都可用于无线电定位,所以一些被留为空白或用占位符填充。诸如 水平和/或垂直精确度稀释(dilution of precision)等其它字段可由诸如不确定因子 等计算出的值来模拟。
现在参照图9,示出的是利用在此公开的系统和/或方法的高层图900。 一个或 多个无线电接收机902适用于发送无线电信号。这些无线电信号被应用程序或浏览 器904和/或本地模块906所接收。应用程序或浏览器904和本地模块906交互以 请求递送信息。应用程序或浏览器904还适用于与网站服务器908交互,诸如发送 和/或接收内容信息,和/或与web服务器和计算组件910交互。web服务器和计算 组件还适用于与本地模块906交互并将更新信息提供给与本地模块906接口的本地 数据库912。 web服务器和计算模块910将无线电信号发送到位置请求日志914。
数据库的更新和错误连接数据从位置请求日志914被发送到与web服务器和计算 模块910接口的在线数据库916。
系统900可向用户提供本地搜索信息。例如,用户通过与诸如具有工具栏集 成的用户设备的交互可请求web服务,并且至少部分地基于用户的计算出的位置, 关于该web搜索的各种参数的信息可被返回到该用户。该系统还可基于用户输入 或推断出的用户动作来提供在线地图绘制并且可包括诸如当前位置跟踪、寻找该用 户的计算出的位置周围感兴趣的地方、和/或路线计划等特征。
在此公开的系统和/或方法还可提供用户的位置历史。该历史可包括诸如用户 在各个时间的位置等行程信息。网络日志和/或日记可用该信息来更新。在另一实 施例中,可根据用户当前的位置、位置历史、和/或将来的位置来执行市场营销研 究。应该理解的是,市场营销和/或市场营销研究要由来自该用户的预先授权来实 现。
该系统可适用于使用户将该用户的位置传送到另一用户。例如,社交应用程 序(例如,即时消息机)可包含已给予用户确定、获得、计算他们的位置的优先许 可的"密友"或"联系人"列表。可包括一邻近性警报,其中如果一 "联系人"在 例如用户的一英里内则通知该用户。用户可确定是否想要与该"联系人"通信并发
起该通信和/或请求会面时间/地点。该系统可基于已知位置来确定用户和"联系人" 可在其会面的感兴趣的地点。
该系统还可提供诸如资产和人的实时跟踪等基于位置的服务。可基于用户当 前位置、位置历史、和/或所预料的将来位置来进行包括目标广告在内的信息递送。 对于特定用户较为重要的是,该系统可通过各种媒体的增强的存在和/或位置标记 来提供实时校准。
图IO示出了用于确定位置信息的系统,其利用了有助于自动化根据本说明书 的一个或多个特征的人工智能(AI) 。 AI可通过所示出的AI组件1010来实现。 所公开的系统和/或方法(例如,与用户设备的位置确定相结合)可釆用各种基于 AI的方案来执行其各个方面。例如,用于确定用户设备的位置的过程可通过自动 分类器系统和过程来促进。分类器是将输入属性矢量x=(xl, x2, x3, x4, xn)映射到该 输入属于一个类的置信度的函数,即f(x)=ConfidenCe(class)。该分类可采用概率和/ 或基于统计的分析(例如,考虑到分析效用和成本)以预测或推断用户希望自动执 行的动作。例如在移动系统的情形中,属性可以是从至少一个基站(例如,Wi-Fi、 AM、 FM...)得到的纬度、经度或其它数据专属属性,并且这些类是接收特性或信号强度。
支持向量机(SVM)是可采用的分类器的一个示例。SVM通过寻找可能输入 的空间中的超曲面来操作,其中超曲面试图将触发准则与非触发事件分离开。直观 地,这使得分类对于与训练数据接近但不相同的测试数据是正确的。其它定向和非 定向模型分类方法包括例如单纯贝叶斯、贝叶斯网络、决策树、神经网络、模糊逻 辑模型,并且可采用提供不同独立性模式的概率分类模型。如在此所使用的分类还 包括被用来开发优先级模型的统计回归。
如从本说明书所容易认识到的,该系统和/或方法可采用显式训练的(例如, 通过普通的训练数据)以及隐式训练的(例如,通过观察用户行为、接收外在信息)
的分类器。例如,SVM是通过分类器构造器和特征选择模块内的学习或训练来配
置的。因此,分类器可被用于自动学习和执行许多功能,其中包括但并不限于根据 预定准则确定何时授权访问、执行哪个存储的过程等等。该准则可包括但并不限于, 要通过调用来访问的数据或资源的数量、数据类型、数据的重要性等。
现在参照图11,示出了可用于执行所公开的体系结构的计算机的框图。为了 为在此公开的各个方面提供额外的上下文,图11和以下讨论旨在提供对可在其中
实现各个方面的合适计算环境1100的简明、概括的描述。虽然以上在可于一个或 多个计算机上运行的计算机可执行指令的一般上下文中对一个或多个实施例进行
了描述,但本领域的技术人员将认识到,各个实施例还可结合其它程序模块和/或 作为硬件和软件的组合来实现。
一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程 序、组件、数据结构等。此外,本领域的技术人员将认识到,本发明方法可用其它 计算机系统配置来实践,包括单处理器或多处理器计算机系统、小型计算机、大型
计算机、以及个人计算机、手持式计算设备、基于微处理器的或者可编程电子消费 品等,它们各自操作性地耦合至一个或多个相关联的设备。
所示出的各方面还可在其中特定任务由通过通信网络链接的远程处理设备来 执行的分布式计算环境中实践。在分布式计算环境中,程序模块可位于本地和远程 存储器存储设备两者中。
计算机通常包括各种计算机可读介质。计算机可读介质可以是可由计算机访
问的任何可用介质,并包括易失性和非易失性介质、可移动和不可移动介质。作为 示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介
质包括以任何方法或技术实现的用于存储诸如计算机可读指令、数据结构、程序模 块或其它数据等信息的易失性和非易失性、可移动和不可移动介质。计算机存储介
质包括,但并不限于,RAM、 ROM、 EEPROM、闪存或其它存储器技术、CD-ROM、 数字通用盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁存储设 备、或可用于存储所需信息并可由计算机访问的任何其它介质。
通信介质通常以诸如载波或其它传输机制之类的已调制数据信号的形式体现 计算机可读指令、数据结构、程序模块或其它数据,并包括任何信息传递媒介。术 语"已调制数据信号"是指这样一种信号,它的一个或多个特性以在信号中编码信 息的方式被设置或改变。作为示例而非限制,通信介质包括诸如有线网络或直接有 线连接等有线介质,以及诸如声波、RF、红外及其它无线介质等无线介质。以上 介质的任意组合也应包括在计算机可读介质的范围内。
再次参照图11,用于实现各个方面的示例性环境1100包括计算机1102,该 计算机1102包括处理单元1104、系统存储器1106以及系统总线1108。系统总线 1108将包括但并不限于系统存储器1106的系统组件耦合至处理单元1104。处理单 元1104可以是各种市场上可购买的处理器中的任意一种。双微处理器和其它多处 理器架构也可被用作处理单元1104。
系统总线1108可以是诸多类型的总线结构中的任意一种,它还可互联至存储 器总线(具有或没有存储器控制器)、外围总线、以及使用各种市场上可购买的总 线架构中的任意一种的局部总线。系统存储器1106包括只读存储器(ROM) 1110 和随机存取存储器(RAM) 1112。基本输入/输出系统(BIOS)被存储在诸如ROM、 EPROM、 EEPROM等非易失性存储器1110中,其中BIOS包含有助于在诸如启动 期间在计算机内的各元件之间传送信息的基本例程。RAM 1112还可包括诸如静态 RAM等用于高速缓存数据的高速RAM。
计算机1102还包括也可被配置成外用在合适的机壳(未示出)中的内部硬盘 驱动器(HDD) 1114 (例如,EIDE、 SATA)、磁软盘驱动器(FDD) 1116 (例 如,对可移动磁盘1118进行读取和写入)以及光盘驱动器1120(例如,读取CD-ROM 盘1122或者对诸如DVD等其它高容量光学介质进行读取或写入)。硬盘驱动器 1114、磁盘驱动器1116和光盘驱动器1120可分别通过硬盘驱动器接口 1124、磁 盘驱动器接口 1126和光驱接口 1128连接至系统总线1108。用于外部驱动器实现 的接口 1124包括通用串行总线(USB)和IEEE 1394接口技术中的至少一个或两 者。其它外部驱动器连接技术在一个或多个实施例的构想之内。
驱动器及其相关联的计算机可读介质提供对数据、数据结构、计算机可执行
指令等的非易失性存储。对于计算机1102,驱动器和介质以合适的数字格式容纳
任意数据的存储。虽然以上对计算机可读介质的描述涉及HDD、可移动磁盘、以 及诸如CD或DVD等可移动光学介质,但本领域的技术人员应该认识到的是,诸 如zip驱动器、磁带盒、闪存卡、盒式磁带等计算机可读的其它类型的介质也可用 在该示例性操作环境中,并且所有这些介质可包含用于执行在此公开的方法的计算 机可读指令。
包括操作系统1130、 一个或多个应用程序1132、其它程序模块1134和程序 数据1136在内的多个程序模块可被存储在驱动器和RAM 1112中。操作系统、应 用、模块和/或数据的全部或部分还可高速缓存在RAM1112中。应该认识到的是, 这各个实施例可用各种市场上可购买的操作系统或操作系统的组合来实现。
用户可通过例如键盘1138和诸如鼠标1140等定点设备等的一个或多个有线/ 无线输入设备将命令和信息输入到计算机1102中。其它输入设备(未示出)可包 括话筒、IR遥控器、操纵杆、游戏垫、指示笔、触摸屏等。这些和其它输入设备 通常通过耦合至系统总线1108的输入设备接口 1142被连接至处理单元1104,但 也可通过诸如并行端口、正EE 1394串行端口、游戏端口、 USB端口、 IR接口等 其它接口来连接。
监视器1144或其它类型的显示器设备也通过诸如视频适配器1146等接口连 接至系统总线1108。除了监视器1144之外,计算机通常包括诸如扬声器、打印机 等其它外围输出设备(未示出)。
计算机1102可使用与诸如远程计算机等一个或多个远程计算机的逻辑连接在 联网环境中操作。远程计算机180可以是工作站、服务器计算机、路由器、个人计 算机、便携式计算机、基于微处理器的娱乐电器、对等设备或其它常见的网络节点, 并且通常包括以上关于计算机1102所描述的部分或所有元件,虽然为了简明的目 的仅示出了存储器/存储设备1150。所绘制的逻辑连接包括到局域网(LAN) 1152 和/或诸如广域网(WAN) 1154等较大网络的有线/无线连接。这些LAN和WAN 联网环境在办公室和公司中是很常见的,并且有助于诸如内联网等企业范围的计算 机网络,所有这些网络都可被连接至诸如因特网等全球通信网。
当在LAN联网环境中使用时,计算机1102通过有线和/无线通信网络接口或 适配器1156连接至局域网1152。适配器1156可有助于到LAN 1152的有线或无 线通信,其中LAN 1152还可包括其上所设置的用于与无线适配器1156通信的无 线接入点。
当在WAN联网环境中使用时,计算机1102可包括调制解调器1158,或者被 连接至WAN 1154上的通信服务器,或者具有用于通过诸如因特网等WAN 1154 建立通信的其它装置。可为内置或外置以及有线或无线设备的调制解调器1158可 通过串行端口接口 1142连接至系统总线1108。在联网环境中,关于计算机1102 所描述的程序模块或其部分可存储在远程存储器/存储设备1150中。应该认识到的 是,所示出的网络连接是示例性的,并且还可使用在计算机之间建立通信链路的其 它装置。
计算机1102可用于与操作性地设在无线通信中的任何无线设备或实体通信, 例如,打印机、扫描仪、台式和/或便携式计算机、便携式数据助理、通信卫星、 与无线可检测标签相关联的任何装备或位置(例如,公用电话亭、报亭、休息室)、 以及电话。这至少包括Wi-Fi和Bluetooth 无线技术。因此,该通信可以是如常 规网络情况下的预定结构或仅是至少两个设备之间的自组织(ad-hoc)通信。
Wi-Fi,即无线保真允许从家里的沙发、宾馆房间、或工作时的会议室无线地 连接至因特网。Wi-Fi是与在手机中所使用的技术相类似的无线技术,它使得诸如 计算机等设备在室内或室外,在基站范围内的任何地方发送和接收数据。Wi-Fi网 络使用被称为IEEE 802.11 (a,b,g等)无线电技术以提供安全、可靠、快速的无线 连接。Wi-Fi可被用于将计算机彼此相连、连接至因特网、或连接至有线网络(使 用正EE 802.3或以太网)。Wi-Fi网络以例如11 Mbps(802.1 la)或54 Mbps(802.1 lb) 的数据率在未授权的2.4和5GHz无线电频段上工作,或者以包含两个频段(双频 段)的产品来工作,所以该网络可提供与在许多办公室中使用的基本10BaseT有 线以太网网络相似的真实性能。
现在参照图12,示出了根据各个实施例的示例性计算环境1200的示意性框 图。系统1200包括一个或多个客户机1202。客户机1202可以是硬件和/或软件(例 如,线程、进程、计算设备)。客户机1202可通过例如采用各个实施例来容纳cookie 和/或相关联的上下文信息。
系统1200还包括一个或多个服务器1204。服务器1204也可以是硬件和/或软 件(例如,线程、过程、计算设备)。服务器1204可通过例如采用各个实施例来 容纳用以执行变换的线程。客户机1202与服务器1204之间的一种可能的通信可以 采用适用于在两个或多个计算机过程之间发送的数据分组的形式。该数据分组可包 括例如cookie和/或相关联的上下文信息。系统1200包括可被用于促进客户机1202 与服务器1204之间的通信的通信框架1206 (例如,诸如因特网等全球通信网络)。
可通过有线(包括光纤)和/或无线技术来促进通信。客户机1202操作上连接
至可被用于存储对客户机1202本地的信息(例如,cookie和/或相关联的上下文信 息)的一个或多个客户机数据存储1208。类似地,服务器1204操作上连接至可被 用于存储对服务器1204本地的信息的一个或多个服务器数据存储1210。
以上所述内容包括各个实施例的示例。当然,不可能为了描述这各个实施例 而描述组件和方法的每种可预想的组合,但是本领域的技术人员可认识到许多进一 步的组合和置换是可能的。相应地,本说明书旨在包含落在所附权利要求书的精神 实质和范围内的所有这些变更、修改和变型。
特别地,关于由上述组件、设备、电路、系统等执行的各种功能,除非另有 指示,否则用于描述这些组件的术语(包括对"装置"的引用)旨在对应于执行所 述组件的指定功能的任何组件(例如功能性等效),即使它们与所公开的用以执行 在此示出的示例性方面中的功能的结构在结构上并不等效。在这点上,还应认识到, 这各个方面包括系统以及具有用于执行各种方法的动作和/或事件的计算机可执行 指令的计算机可读介质。
另外,虽然可能仅关于诸多实现中的一个公开了具体特征,但该特征在对于 任意给定或特定的应用需要和有利时可以与其它实现中的一个或多个其它特征组 合。此外,就术语"包括"和"包括在内"及其变型在说明书或权利要求中使用而 言,这些术语旨在以与术语"包含"相类似的方式表示包含的意思。
权利要求
1.一种便于位置定位的系统,包括外部环境组件,它检测在用户设备附近的至少一个基站并将基站信息传送到Web服务;以及包括基站位置的数据库的分析组件,它至少部分地基于所述基站信息来确定所述用户设备的位置,并通过所述Web服务将所述用户设备位置发送到所述用户设备。
2. 如权利要求1所述的系统,其特征在于,所述分析组件包括 不确定性组件,它确定所述用户设备位置信息的不确定性,并将所述不确定性传送给所述用户设备。
3. 如权利要求2所述的系统,其特征在于,所述用户设备的不确定性是概率函数的和。
4. 如权利要求2所述的系统,其特征在于,所述用户设备的不确定性是基于 实验数据的。
5. 如权利要求l所述的系统,其特征在于,还包括训练组件,它在从所述外部分析组件接收到的至少一个新基站位置信息没有 被包括在所述数据库中时用所述基站位置信息来更新所述基站位置的数据库。
6. 如权利要求1所述的系统,其特征在于,在所述Web服务将不可用时所 述基站位置的数据库的一子集被传送到所述用户设备。
7. 如权利要求l所述的系统,其特征在于,还包括错误数据组件,它跟踪从所述用户设备接收到的基站信息并在接收到错误数 据时标记所述用户设备。
8. 如权利要求l所述的系统,其特征在于,所述至少一个基站发射可由所述 用户设备来表征的信号。
9. 如权利要求1所述的系统,其特征在于,所述至少一个基站发射Wi-Fi、 AM、 FM、 TV、电磁和声信号中的一个。
10. —种用于确定移动设备的位置的方法,包括 从移动设备接收基站标识和接收特性; 将所述基站标识与基站位置的数据库相比较; 至少部分地基于所比较的基站位置和所接收到的接收特性来计算所述移动设 备的位置;以及将计算出的位置传送给所述用户设备。
11. 如权利要求IO所述的方法,其特征在于,还包括 在所述移动设备上加载所述基站位置的数据库的一个子集;以及 允许所述移动设备至少部分地基于所述基站位置的数据库的所述子集和所述接收特性来计算位置。
12. 如权利要求IO所述的方法,其特征在于,还包括确定所计算出的位置的不确定性;以及至少部分地基于所确定的不确定性向所述用户设备提供所计算出的位置的精 确度水平。
13. 如权利要求12所述的方法,其特征在于,确定所计算出的位置的不确定 性是基于概率函数的和。
14. 如权利要求12所述的方法,其特征在于,确定所计算出的位置的不确定 性是基于实验数据。
15. 如权利要求IO所述的方法,其特征在于,还包括 用所接收到的基站标识信息来更新所述基站的数据库;以及 确定所更新的基站标识信息的精确度。
16. 如权利要求15所述的方法,其特征在于,还包括 标识不精确的基站标识信息;将所述不精确的基站标识信息与移动设备相关联;以及 禁止来自所述移动设备的将来的基站标识信息。
17. 如权利要求IO所述的方法,其特征在于,所述移动设备与web服务之间 的通信是通过http/https处理机进行的。
18. —种确定移动设备的位置的系统,包括 用于从基站接收基站标识信息的装置; 用于确定所述基站的位置的装置;以及用于至少部分地基于所确定的所述基站的位置来计算移动设备的位置的装置。
19. 如权利要求18所述的系统,其特征在于,还包括 用于计算所计算出的移动设备位置的误差百分比的装置;以及用于将所述误差百分比发送到所述移动设备的装置。 20.如权利要求18所述的方法,其特征在于,还包括用于更新基站位置数据库的装置; 用于确定所更新的基站位置的精确度的装置;以及用于在所述精确度低于一可接受水平之下时禁止发送所更新的基站位置的装
全文摘要
利用从基站或接入点接收到的Wi-Fi、FM、AM、电视传输、其它无线电传输、电磁、声、或其它信号的移动设备的位置场所信息。该位置信息可通过Web服务和/或在移动用户设备上本地地提供。该位置信息可配备有确定性和/或不确定性概率百分比或用户可用于确定该位置信息的预计精确度的其它可感知手段。还提供了一种用于通过来自各自被给予一信赖因子的多个用户设备的信息来更新基站信息以包括新检测到的基站的装置。具有低信赖因子的用户设备被忽略和/或细察以在这些信息被用于更新信息之前确定其精确度。系统功能可通过使用数据的分析和/或数据库的添加来改善。
文档编号H04W64/00GK101189890SQ200680019688
公开日2008年5月28日 申请日期2006年5月12日 优先权日2005年6月28日
发明者A·沙拉玛, C·托塔, J·C·克姆, M·M·C·舍恩, S·J·隆巴迪 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1