具有个人偏好分析机制的导航系统及其操作方法与流程

文档序号:32157083发布日期:2022-11-12 00:09阅读:32来源:国知局
具有个人偏好分析机制的导航系统及其操作方法与流程

1.本发明的实施例总体上涉及导航系统,并且更具体地涉及具有用户偏好分析机制的系统。


背景技术:

2.现代消费和工业电子产品,尤其是诸如图形计算系统、电视、投影仪、蜂窝电话、便携式数字助理和组合设备的设备,正在提供越来越多的功能级别来支持现代生活,包括基于位置的信息服务。现有技术的研究和开发可以采取无数不同的方向。
3.随着移动通信技术的发展,用户变得更加强大,新旧范式开始利用此新空间。一种这样的空间是设备的导航功能。然而,在用户随时可用的信息不断增加的过程中,平衡多种特征功能与用户的相关上下文尚未被充分利用。
4.因此,仍然需要具有个人偏好分析机制的导航系统。鉴于不断增加的商业竞争压力,随着消费者期望的增长以及市场上有意义的产品差异化机会的减少,找到这些问题的答案变得越来越重要。此外,降低成本、提高效率和性能以及应对竞争压力的需求增加了寻找这些问题答案的关键必要性的更大紧迫性。
5.这些问题的解决方案已在被长期寻找,但是之前的发展尚没有教导或建议任何解决方案,因此,这些问题的解决方案长期以来一直困扰着本领域技术人员。


技术实现要素:

6.本发明的实施例提供了一种导航系统的操作方法,包括:接收对兴趣点(point of interest)的搜索请求;基于用户简档(user profile)确定行驶路线;基于相对于行驶路线的最小度量(minimum metric)而不是仅基于沿行驶路线的当前位置,生成针对兴趣点的候选结果;以及传送候选结果以在设备上并接近行驶路线进行显示。
7.本发明实施例提供一种导航系统,包括:被配置用于以下操作的控制电路:接收对兴趣点的搜索请求;基于用户简档确定行驶路线;基于相对于行驶路线的最小度量而不是仅基于沿行驶路线的当前位置,生成针对兴趣点的候选结果;以及传送候选结果以在设备上并接近行驶路线进行显示。
8.本发明的实施例提供了一种非暂时性计算机可读介质,其包括用于导航系统的指令,包括:接收对兴趣点的搜索请求;基于用户简档确定行驶路线;基于相对于行驶路线的最小度量而不是仅基于沿行驶路线的当前位置,生成针对兴趣点的候选结果;以及传送候选结果以在设备上并接近行驶路线进行显示。
9.本发明的某些实施例具有除了上述那些之外或代替上述那些的其他步骤或元素。当参照附图时,通过对以下详细描述的阅读,这些步骤或元件对于本领域技术人员将变得清楚。
附图说明
10.图1是本发明实施例中的具有偏好分析机制的导航系统。
11.图2是导航系统的显示界面的示例。
12.图3是导航系统的显示界面的又一示例。
13.图4是导航系统的显示界面的另一示例。
14.图5是导航系统的示例性框图。
15.图6是导航系统的控制流程。
16.图7是本发明实施例中的导航系统的操作方法的流程图。
具体实施方式
17.以下实施例可以用于为最终用户生成用户偏好简档以在导航信息中表示偏好。用户偏好简档可以基于先前轨迹、所选路线、与其相关联的上下文参数、或其组合来生成,而不需要来自最终用户的对偏好的描述或标识的直接输入。先前轨迹、所选路线或其组合可以被标识或分类为非默认选择(non-default selection)。用户偏好简档可以基于具体地处理这些非默认选择来生成。当在提供导航信息时并入用户的偏好时,用户偏好简档可以充当基于偏好的路线的基础。
18.以下实施例被足够详细地描述以使本领域技术人员能够制造和使用本发明。应当理解,基于本公开,其他实施例将是清楚的,并且系统、过程或机械改变可以在不脱离本发明实施例的范围的情况下进行。
19.在以下描述中,许多具体细节被给出以提供对本发明的透彻理解。然而,显然本发明可以在没有这些具体细节的情况下实践。为了避免混淆本发明的实施例,一些众所周知的电路、系统配置和处理步骤未被详细公开。
20.示出系统的实施例的附图是半图解的,并且不是按比例的,并且具体地,尺寸中的一些是为了呈现的清晰并且在附图中被放大地示出。类似地,尽管为了便于描述,附图中的视图通常示出类似的方位,但附图中的此描述很大程度上是任意的。通常,本发明可以在任何方位上操作。为便于描述,实施例已被编号为第一实施例、第二实施例等,并且不旨在具有任何其他意义或对本发明的实施例提供限制。
21.本领域技术人员将理解,表达导航信息的格式对于本发明的一些实施例来说不是关键的。例如,在一些实施例中,导航信息以(x,y)的格式呈现;其中x和y是定义地理位置(即用户的方位)的两个坐标。
22.在替代实施例中,导航信息是由与经度和纬度相关的信息来呈现的。在本发明的另一实施例中,导航信息还包括速度元素,该速度元素包括速率分量和前进方向(heading)分量。
23.本文所指的术语“相关信息”可以包括所描述的导航信息以及与用户的兴趣点相关的信息,诸如本地企业、营业时间、营业类型、广告特价品、交通信息、地图、本地事件、和基于位置的社区或个人信息。
24.根据使用术语的上下文,本文所指的术语“模块”可以包括或被实现为或包括本发明中的软件、硬件或其组合。例如,软件可以是机器代码、固件、嵌入式代码和应用软件。软件还可以包括函数、对函数的调用、代码块或其组合。又例如,硬件可以是门、电路、处理器、
计算机、集成电路、集成电路核心、压力传感器、惯性传感器、微机电系统(mems)、无源设备,具有用于执行软件功能(其一部分或其组合,以控制一个或多个硬件单元或电路)的指令的物理非暂时性存储介质。
25.现在参考图1,其中示出了本发明的实施例中的具有偏好分析机制的导航系统100。导航系统100可以包括第一设备102(诸如客户端或服务器),第一设备102连接到第二设备106(诸如客户端或服务器)。
26.导航系统100可以包括用于搜索或提供与地理位置相关联的引导或信息的系统、用于启用对设备或车辆的访问的监管系统、或其组合。第一设备102可以通过网络104(诸如无线或有线网络)与第二设备106通信。
27.例如,第一设备102可以是多种计算设备中的任何一种,诸如蜂窝电话、个人数字助理、笔记本电脑、可穿戴设备、物联网(iot)设备、汽车远程信息处理导航系统,或其他多功能移动通信或娱乐设备。又例如,第一设备102可以包括设备或子系统。
28.第一设备102可以直接或间接地耦合到网络104以与第二设备106通信,或者可以是独立设备。第一设备102还可以是单独的形式,或与车辆(诸如汽车、卡车、公共汽车或火车)结合。
29.出于说明的目的,导航系统100被描述为具有作为移动计算设备的第一设备102,但是应当理解第一设备102可以是不同类型的设备。例如,第一设备102也可以是非移动计算设备,诸如服务器、服务器群或台式计算机。
30.第二设备106可以是多种集中式或分散式计算设备或视频传输设备中的任何一种。例如,第二设备106可以是计算机、网格计算资源、虚拟化计算机资源、云计算资源、路由器、交换机、对等(peer-to-peer)分布式计算设备,或其组合。
31.第二设备106可以集中在单个房间中、跨不同房间分布、跨不同地理位置分布、嵌入在电信网络内。第二设备106可以与网络104耦合以与第一设备102通信。第二设备106也可以是如针对第一设备102所描述的客户端类型设备。
32.出于说明的目的,导航系统100被描述为具有作为非移动计算设备的第二设备106,但是,应当理解第二设备106可以是不同类型的计算设备。例如,第二设备106也可以是移动计算设备,诸如笔记本电脑、另一个客户端设备、可穿戴设备或不同类型的客户端设备。第二设备106可以是独立设备,或者可以与车辆(诸如汽车、卡车、公共汽车或火车)结合。
33.同样出于说明的目的,导航系统100被描述为具有作为计算设备的第二设备106,但是,应当理解第二设备106可以是不同类型的设备。同样出于说明的目的,导航系统100被描述为具有作为网络104的端点的第二设备106和第一设备102,但是,应当理解导航系统100可以在第一设备102、第二设备106和网络104之间具有不同的分区。例如,第一设备102、第二设备106或其组合也可以用作网络104的一部分。
34.网络104可以跨越并表示多种网络。例如,网络104可以包括无线通信、有线通信、光学、超声波或其组合。卫星通信、蜂窝通信、蓝牙、红外数据协会标准(irda)、无线保真(wifi)和全球微波接入互操作性(wimax)是可以包括在通信路径104中的无线通信的示例。以太网,数字用户线(dsl)、光纤到户(ftth)和普通老式电话服务(pots)是可以包括在网络104中的有线通信的示例。此外,网络104可以穿越多个网络拓扑和距离。例如,网络104可以
包括直接连接、个域网(pan)、局域网(lan)、城域网(man)、广域网(wan)或其组合。
35.导航系统100可以被系统用户108、另外的参与者110或其组合使用。系统用户108可以包括访问或利用导航系统100或其中的设备的人或实体。例如,系统用户108可以包括拥有或操作第一设备102的人。又例如,系统用户108可以通过第一设备102访问或利用第二设备106。
36.另外的参与者110可以包括访问或利用导航系统100或其中的一个或多个设备的多个人或实体。另外的参与者110可以包括与系统用户108不同和分开的人或实体。例如,另外的参与者110可以各自拥有、访问、使用(或其组合)第一设备102以外的单独设备。又例如,另外的参与者110可以通过与另外的参与者110中的每个参与者对应的单独设备来访问或利用第二设备106。
37.现在参考图2,其中示出了导航系统100的显示界面的示例。导航系统100可以包括对应于图1的系统用户108、图1的另外的参与者110中的一个或多个,或其组合的用户简档202。
38.用户简档202是对导航系统100已知的对应个人、实体或组的描述。用户简档202可以包括对应方的标识信息、人口统计(demographic)描述、职业信息、社交关系、状态、或其组合。例如,用户简档202可以包括用户标识204、用户描述206或其组合。
39.用户标识204可以包括用于表示对应方的唯一性的信息。用户标识204可以包括用于识别该对应方的信息,诸如用于识别的面部特征、登录名、密码、或其组合。用户标识204还可以包括对应方的表示,诸如屏幕名称、存储的表示或对应于对应方的信息的地址、或其组合。
40.用户描述206可以包括描述对应方(诸如系统用户108、另外的参与者110中的一个或多个,或其组合)的一个或多个方面的信息。用户描述206可以包括人口统计信息(诸如年龄或性别)、重要位置(诸如家庭或工作)、职业信息或头衔,或其组合。用户描述206还可以包括诸如对应方所拥有或使用的车辆、估计的技能水平、驾驶习惯或其组合的信息。
41.用户描述206还可以包括关系信息(诸如社交网络),最终用户之间(诸如家庭或同事之间)的联系,或其组合。例如,用户描述206可以将系统用户108标识为工作的父母(working parent),其具有与被标识为“家”和“工作”的位置相对应的联系或行驶模式。用户描述206还可以标识系统用户108在职业组织中具有特定头衔。
42.继续该示例,用户描述206还可以将系统用户108标识为另外的参与者110之一的父母,该另外的参与者之一对应于被标识为“家”的同一位置和被标识为“学校”的另外位置。导航系统100可以基于与该另外的参与者110之一的社交连接、“家”和“学校”的位置的重叠、职业信息或其组合,将系统用户108标识为属于工作父母的类别。
43.导航系统100还可以包括用户分组208的一个或多个实例。用户分组208可以包括系统用户108和另外的参与者110的子集。用户分组208可以基于由子集内的成员共享的一个或多个共性而包括子集的一个或多个实例。
44.例如,用户分组208可以基于用户简档202中的相似性而将人或实体与另外的参与者110中的一个或多个分组在一起。作为更具体的示例,用户分组208可以包括另外的参与者110中的具有相似人口统计信息、共享重要位置、或彼此在阈值距离内(或其组合)的一个或多个。用户分组208还可以基于系统估计,诸如针对技能水平或偏好的系统估计。
45.用户分组208可以包括相关分组(correlated grouping)210。相关分组210可以包括用户分组208的一个或多个实例,包括系统用户108。相关分组210可以包括另外的参与者110中的与系统用户108共享连接或相似性的一个或多个。
46.导航系统100可以向系统用户108、另外的参与者110或其组合提供导航特征。导航系统100可以呈现地理信息、去往地理位置的引导、具体位置的搜索和标识,或其组合。
47.导航系统100可以在提供导航特征时生成候选路线集212。响应于接口方(诸如系统用户108或另外的参与者110中的一个或多个)的动作、来自接口方的输入、状态(或其组合),候选路线集212可包括候选路线214的一个或多个实例。候选路线集212可以包括一组候选路线,用于呈现给对接方、供对接方选择、或其组合。
48.候选路线214是用于在适用于来自接口方的输入的地理位置之间穿越的连续路径。候选路线214可以包括用于在起点到目的地之间穿越的路径。候选路线214可以包括接口方要采取的潜在路线。
49.候选路线214可以包括对来自接口方的查询或请求的响应。候选路线214还可以包括用于评估期望目的地和接口方之间的关系(诸如距离或选择的可能性,或其组合)的假设路线。
50.候选路线214可以对应于到达时间估计216、候选距离218、路线分解简档220、或其组合。候选距离218可以包括候选路线214的距离表示或测量。候选距离218可以是系统用户108在遵循或穿越候选路线214时所穿越的距离量。导航系统100可以基于地图信息、关于包括在候选路线214中的路段的细节、或其组合来计算候选距离218。
51.到达时间估计216可以包括对对应于行驶者沿着候选路线214到达具体对应位置的时间或抵达具体对应位置所需的行驶持续时间的所计算的预测。到达时间估计216可以对应于系统用户108沿着候选路线214到达一个或多个检查点、目的地(或其组合),穿越候选路线214内的一个或多个部分,或其组合。
52.导航系统100可以基于沿构成候选路线214的一个或多个路段的路段穿越历史数据、平均行驶速率、速率限制或其组合来计算到达时间估计216。导航系统100可以基于历史数据或平均速度(使用所有用户的、包括用户分组208的用户分组的、特定于系统用户108的(或其组合)平均速度)来计算到达时间估计216。导航系统100还可以基于候选路线214或其中的一部分的候选距离218,来计算到达时间估计216。
53.路线分解简档220是用于跟随或穿越候选路线214所需的一组物理的操纵(maneuver)。路线分解简档220可以包括操纵、路段、其条件或特性、其可能的结果或其后果、其估计或评级,或其组合。例如,路线分解简档220可以包括路段集、操纵集222、路段类别集224、操纵延迟时间228、交通密度230、或其组合。
54.路段集可以包括候选路线214的对应实例中所包括的一组道路路径或路段。路段集可以包括特定段的道路路径或路段的的标识、将路径或路段连接到另一路段或路径的节点,或其组合。
55.路段集可以包括号码、字母、符号、街道名称、地址、街道集、或其组合。例如,路段集可以包括与候选路线214中所包括的道路或路径的特定部分、与之连接的交叉点、或其组合相对应的序列号,地图元素标识符,或其组合。例如,路段集可以包括路径(该路径包括路段或路径)的名称以及连接或邻接该路径的另外路径的不同名称。
56.操纵集222是对车辆的一个或多个具体操纵(诸如用于与穿越或跟随候选路线214相关联的改变行驶方向、加速或减速、车道改变、停车、或其组合)的分组。操纵集222可以包括对应于地图特征(诸如节点、车道、交通信号或标志、弯道、路段类型、或其组合)的操纵。操纵集222可以包括用于引导系统用户108跟随或穿越候选路线214的指令或引导信息。
57.操纵集222可以包括对应于路段集的操纵。例如,操纵集222可以包括一系列操纵,诸如穿越或跟随候选路线214所必需的转向、变道或并道、源起(sourcing)和结束路段,或其组合。作为更具体的示例,操纵集222可以包括要在以对应于候选路线214的必要顺序在路段集中列出的交叉点或者路段(或部分)的特定实例处的操纵。
58.路段类别集224是一组描述、标签或分类,用于表示候选路线214的路段或路径部分中的每一个。路段类别集224可以包括对包括在路段集中的路段或路径的描述或分类。
59.例如,路段类别集224可以包括例如“高速公路”、“干线”、“州际公路”、“国道”、“城市道路”、“农村道路”、“新开发”、“立交桥”、“地下通道”、“桥梁”或其组合的描述、标签或分类。又例如,路段类别集224可以包括基于车道数量、入口或进出点的数量或类型、行驶方向(或其组合)的描述、标签或分类。
60.操纵延迟时间228是与跟随或穿越候选路线214所需的具体操纵相关联的时间量的表示。操纵延迟时间228可以包括人们在候选路线214的特定位置处执行特定对应操纵所花费的估计时间或平均时间。操纵延迟时间228可对应于操纵集222、路段集或其组合中的位置、操纵或其组合。
61.交通密度230是候选路线214或其中的一部分的车辆、人或其组合的数量的表示。交通密度230可以基于历史数据。交通密度230还可以基于实时数据,诸如行驶者的流速或速率。导航系统100可以基于访问包括历史记录的数据库、基于系统用户108或当前穿越路段或路线的任何另外的参与者110中的任何一个的当前速率、或其组合来确定路线或其中的一部分的交通密度230。
62.候选路线集212还可以包括基于偏好的路线234。基于偏好的路线234是基于或根据系统用户108的偏好或模式而生成的候选路线214的实例。基于偏好的路线234可以基于行为、轨迹、选择、其上下文、或其组合来生成。基于偏好的路线234可以通过使用间接信息确定用户的偏好来动态生成或更新,而不需直接地标识系统用户108的偏好的信息或输入(诸如被设计为仅确定用户对路线和引导的偏好的调查或查询)。
63.导航系统100可以基于来自系统用户108的响应或输入来确定所选路线236。所选路线236可以包括来自候选路线集212中的由系统用户108选择的用于穿越到目的地的候选路线214的实例。所选路线236可以表示用户针对具体导航会话做出的选择。所选路线236可以被用于确定系统用户108的偏好,因为它间接地反映系统用户108在路线选择或导航中的偏好,或是基于系统用户108在路线选择或导航中的偏好而被选择的。
64.所选路线236可以基于或来自默认选择。默认选择是候选路线214中满足具体条件的实例。默认选择可包括由导航系统100突出显示的候选路线214的实例。默认选择可包括选择光标置于其上的候选路线214的实例。默认选择还可以包括在候选路线集212的顶部或中心列出或显示的候选路线214的实例。
65.默认选择可以基于候选路线214的类别、条件、特点、特性或其组合来确定。例如,默认选择可以包括基于效率的选择,诸如最短路线238、最快路线240或其组合。又例如,默
认选择可以包括基于偏好的路线234。
66.最短路线238可以包括候选路线集212内的候选者中具有到达目的地所需的最短总行驶距离的候选路线214的实例。最快路线240可以包括候选路线集212内的候选者中具有到达目的地所需的最短估计总行驶时间的候选路线214的实例。
67.所选路线236还可以基于或来自非默认选择242。非默认选择242是与默认选择不同的候选路线214的实例。非默认选择242可以包括非效率选择。非默认选择242可以包括与基于效率的选择(诸如最短路线238或最快路线240)不同、与基于偏好的路线234不同、或其组合的候选路线214的实例。
68.非默认选择242可以包括由导航系统100估计的不是最短路线238、不是最快路线240、不是基于偏好的路线234(或其组合)的所选路线236。导航系统100可以使用非默认选择242和与其相关联的条件或环境来确定系统用户108的偏好。
69.导航系统100可以确定与用户选择相关联的一个或多个上下文参数244。上下文参数244可以包括关于最终用户的地理移动或行驶的情况、环境、目的、重要性或其组合的表示。上下文参数244包括与系统用户108、候选路线集212、所选路线236或其组合相关联或相关的数据或信息。关于上下文参数244的细节在下面讨论。
70.导航系统100可以在用户历史246中存储上下文参数244、所选路线236、候选路线集212或其组合。用户历史246可以包括先前发生的地理移动或行驶实例的记录。
71.用户历史246可以包括在没有利用导航系统100的导航或引导特征的情况下先前的自由驾驶会话实例。用户历史246还可以包括先前的导航会话实例。例如,用户历史246可以包括车辆轨迹、所选路线236、对应于所选路线236的候选路线集212、与用户的行驶相关联的上下文参数244、或其组合。
72.导航系统100可以访问用户历史246、实时所选路线236或其组合以生成用户偏好简档248。导航系统100可以基于所选路线236、上下文参数244、候选路线集212或其组合来生成用户偏好简档248。
73.用户偏好简档248是对应的最终用户的导航或引导偏好的表示。用户偏好简档248可以包括对系统用户108所期望的特定特性或特点的描述。用户偏好简档248还可以包括与系统用户108的具体偏好相关联或指示系统用户108的具体偏好的场景或条件。
74.例如,用户偏好简档248可以包括系统用户108优选地在系统用户108的路线中要包括或避免的操纵、路段、其类型、其结果(诸如延迟或风景路线)、难度级别、品牌、休闲享受、或其组合。又例如,用户偏好简档248可以包括与影响系统用户108的偏好的到达目的地的紧迫性或重要性、一组行驶伙伴、熟悉度、用户的技能水平、一天中的时间、或其组合相关联的场景或条件。关于用户偏好简档248的细节在下面讨论。
75.现在参考图3,其中示出了导航系统100的显示界面的另一个示例。该显示界面可以示出图2的上下文参数244、图2的用户历史246、图2的用户偏好简档248或其组合的细节。上下文参数244可以包括用于用户上下文302、路线上下文312、紧迫性估计324或其组合的一个或多个参数或表示。
76.用户上下文302可以包括关于图1的系统用户108的情况、环境、目的、重要性或其组合的表示。用户上下文302可以是来自系统用户108的角度。用户上下文302可以包括从系统用户108的角度表示情况或场景或其特性的参数、标签、摘要或其组合,而不直接描述对
应路线(诸如图2的所选路线236或行驶路线)。
77.例如,用户上下文302可以包括后续事件304、先行事件306、用户消息集310或其组合。后续事件304可以包括与在与对应路线相关联的时间之后的时间相关联的发生或出现。
78.后续事件304可以包括计划在系统用户108估计到达目的地之后、在当前时间之后、在开始在路线上行驶之后、在请求路线之后(或其组合)出现或开始的事件。后续事件304还可以与对应路线(诸如图2的候选路线214、所选路线236、先前行驶的路线或轨迹、或其组合)相关联。
79.先行事件306可以包括与对应路线相关联的时间相关联的发生或出现,其中该时间在与对应路线相关联的时间之前。先行事件306在描述上可以与后续事件304相似,但是后续事件304在该时间之后出现。
80.例如,先行事件306可以包括计划在系统用户108估计到达目的地之前、在当前时间之前、在开始在路线上行驶之前、在请求路线之前(或其组合)出现或开始的事件。又例如,先前事件306还可以与对应路线(诸如候选路线214、所选路线236、先前行驶的路线或轨迹、或其组合)相关联。
81.用户消息集310可以包括与特定用户相关联的通讯(correspondence),诸如电子邮件、文本消息、电话呼叫、视频聊天或其组合。例如,用户消息集310可以包括收件箱、已发送箱、已删除消息、其中的通讯,或其组合。又例如,用户消息集310可以包括通话记录。又例如,用户消息集310可以包括用于这些消息的标签或其类别、元数据或上下文信息、或其组合。
82.路线上下文312可以包括关于路线的情况、环境、目的、重要性或其组合的表示。路线上下文312可以从路线或系统用户108的导航会话的角度。路线上下文312可以直接描述或表示所选路线236、先前轨迹、目的地、图2的候选路线集212,或其组合。
83.路线上下文312可以类似于用户上下文302,但是用于不同的视角或类别或信息。路线上下文312可以包括从导航会话的角度来表示情况或场景或其特性的参数、标签、摘要或其组合,而不直接描述对应行驶者。例如,路线上下文312可以包括目的地类别314、请求源起(sourcing)位置316、请求时间318、行驶初始化起时间320、搜索项(term)322或其组合。
84.目的地类别314可以包括与候选路线214相关联的目的地的标签或分类。目的地类别314可以描述系统用户108寻找的目的地。例如,目的地类别314可以包括“职业'、“个人”、“社交”、“营业地”、“家”、“工作地”、“餐厅”或其组合。又例如,目的地类别314可以基于系统用户108对目的地的熟悉度或对目的地的先前访问次数。
85.请求源起位置316可以包括与系统用户108在请求导航或引导时的地理位置相关联的地理位置或实体。请求源起位置316可以是对应于系统用户108使用导航系统100来搜索目的地、请求到目的地的路线(或其组合)的位置。
86.请求时间318可以包括系统用户108请求导航或引导的时间。请求时间318可以类似于请求源起位置316,但是是关于时间而不是位置。请求时间318可以是对应于系统用户108使用导航系统100提交对目的地的请求、到目的地的路线请求(或其组合)的时间。
87.行驶初始化起时间320可以包括系统用户108开始行驶所选路线236或先前行驶轨迹的时间。行驶初始化起时间320可以是系统用户108选择候选路线214作为所选路线236的
时间。行驶初始化起时间320还可以对应于系统用户108离开先行事件306、具体位置(或其组合)的时间。
88.搜索项322可以包括来自寻找目的地或路线的系统用户108的字母、数字、符号或其组合。搜索项322可以包括由系统用户108提供作为导航系统100的输入的名称、标题、关键字或其组合。搜索项322可以用于初始化对目的地、到目的地的路线、与位置相关联的产品、项目、人或名称、地址或其组合的搜索。
89.紧迫性估计324可以包括对计算或预测的严重性、重要性、渴望度、压力或其组合的表示。紧迫性估计324可由导航系统100关于到达目的地、穿越所选路线236、穿越先前轨迹(或其组合)来进行估计。导航系统100可以基于驾驶模式(诸如加速度计读数或相对于限制的行驶速度)、基于上下文参数244或其组合来确定紧迫性估计324。
90.用户历史246可以包括对应于时间标记328的先前轨迹326、先前选择330或其组合。先前轨迹326是一组链接的地理位置,其表示系统用户108先前在不利用导航引导或系统提供的路线的情况下经过的路径。
91.导航系统100可以在自由驾驶模式期间跟踪系统用户108的位置,在自由驾驶模式中,系统用户108在不利用所选路线236并且不利用来自导航系统100的任何导航特征的情况下行驶。导航系统100可以定期地记录系统用户108的当前位置或对应的坐标信息。导航系统100可以将一组记录的坐标标识为先前轨迹326。
92.先前轨迹326内的坐标中的一个或多个坐标可以对应于时间标记328。时间标记328是先前轨迹326内地理位置的记录时间的指示。导航系统100可以与先前轨迹326的当前位置一起记录当前时间。导航系统100可以使用时间标记328来标识先前轨迹326。
93.先前选择330可以包括所选路线236的先前实例。先前选择330可以包括系统用户108根据先前的搜索或请求而选择的路线。每次系统用户108选择所选路线236时,导航系统100可以存储地址、路线、其标识符、其压缩摘要,或其组合。导航系统100可以存储所选路线236连同该选择的当前时间。
94.导航系统100可以确定目的地估计332。目的地估计332是对于行驶会话的目的地的预测或近似。目的地估计332可以对应于当前或先前发生的自由驾驶会话的目的地。目的地估计332可以基于上下文参数244、从用户历史246、或其组合来确定。目的地估计332还可以与标识先前轨迹326相关联。
95.导航系统100可以使用时间过滤器334、候选停靠点(stop)336、目的地时间阈值338、中间时间阈值340、中间停靠点342、或其组合来确定目的地估计332。时间过滤器334是用于基于停靠的持续时间来去除不合格停靠点的机制。时间过滤器334可以以硬件或软件实现。时间过滤器334可以是基于与停靠的持续时间对应的阈值时间的。
96.候选停靠点336是系统用户108占用的时间超过时间过滤器334的阈值的位置。候选停靠点336可以对应于系统用户108停车或已经停车达到时间过滤器334所需的足够多的时间量的位置。
97.目的地时间阈值338是用于标识目的地估计332的时间量或持续时间。当系统用户108在候选停靠点336处停留的持续时间超过目的地时间阈值338时,导航系统100可以通过将候选停靠点336标识为目的地估计332来确定目的地估计332。
98.中间时间阈值340是用于标识中间停靠点342的时间量或持续时间。中间时间阈值
340、目的地时间阈值338、或其组合可以被用于区分目的地估计332和中间停靠点342。当系统用户108在候选停靠点336停留的持续时间超过中间时间阈值340、低于目的地时间阈值338或其组合时,导航系统100可以确定中间停靠点342。
99.中间停靠点342是系统用户108在向目的地行驶时所占据的位置。中间停靠点342可以包括与任务或差事相关联的位置。中间停靠点342可以便于向目的地行驶。例如,中间停靠点342可包括在向目的地行驶时在加油站、杂货店、或其组合处的停靠点。
100.导航系统100可以包括预定的并且大于中间时间阈值340的目的地时间阈值338。导航系统100还可以包括预定的并且大于时间过滤器334的中间时间阈值340。导航系统100还可以包括基于各种因素而自适应的目的地时间阈值338、中间时间阈值340、时间过滤器334或其组合。
101.例如,目的地时间阈值338、中间时间阈值340、时间过滤器334或其组合可以对应于交通信号的平均持续时间、并道操纵、交通延迟场景、加油、在场所的等待时间、与目的地相关的平均杂货店停靠、或其组合。又例如,目的地时间阈值338、中间时间阈值340、时间过滤器334或其组合可以基于目的地估计332、相对位置、上下文参数244或其组合而调整。
102.作为更具体的示例,目的地时间阈值338、中间时间阈值340、时间过滤器334或其组合可基于一天中的时间、当前位置、公共道路路段或机构内的车辆数量,公共道路路段或机构内的平均速度,或其组合来适配。同样作为更具体的示例,目的地时间阈值338、中间时间阈值340、时间过滤器334或其组合可以基于用户消息集310内的关键字、系统用户108的日历、或其组合来调整。
103.用户偏好简档248可以使用初始简档344来生成。初始简档344是被认为是最终用户的一组代表性偏好。初始简档344可以初始地表示系统用户108。初始简档344可以是用于生成和更新用户偏好简档248的起点。初始简档344可以基于来自系统用户108的一个或多个输入以用于直接标识系统用户108的一个或多个偏好。
104.初始简档344还可以基于与系统用户108共享相似性的其他最终用户。例如,初始简档344可以是对应于图1的一个或多个另外的参与者110中的一个或多个参与者(该一个或多个参与者的图2的用户简档202或其一部分与系统用户108相匹配)的用户偏好简档248、其中的一部分、其平均值或其组合。作为更具体的示例,初始简档344可以从另外的参与者110中具有重叠的行驶区域、相同的人口统计信息、相同的工作地或家庭、相同的车辆类或类别、路线的相似性、用户历史246内的共性(或其组合)的一个或多个参与者生成。
105.路段偏好348是对应的最终用户偏爱或不偏爱的一个或多个路段、边、路径或其组合的表示。路段偏好348可以包括对应于图2的路段类别集224的一种或多种类型或类别。例如,路段偏好348可以包括“高速公路”、“干线”、“快速公路”、“环路”、'收费公路”、“农村公路”、“单向”、“环形交叉路口”、“立交”、“桥梁”、“天桥”、“隧道”、“地下通道”、“农村道路”或其组合。
106.优化偏好354是最终用户偏爱高效路线而不是其他选择或因素的倾向的表示。优化偏好354可以表示系统用户108将选择图2的最短路线238、图2的最快路线240(或其组合)的可能性。优化偏好354还可以表示系统用户108将选择图2的非默认选择242或低效路线而不是默认选择或高效路线的可能性。优化偏好354可以指示系统用户108偏爱其他因素或参数而忽略时间或资源效率的模式或偏好。
107.品牌偏好356是最终用户偏爱或不偏爱的具体商品或服务来源的表示。品牌偏好356可以表示系统用户108对对应于目的地的具体公司、集团、机构或其组合的特定兴趣,无论是正面的还是负面的。例如,品牌偏好356可以对应于系统用户108偏爱或避免的具体咖啡品牌、某个商店或餐厅、特定连锁健康俱乐部,或其组合。
108.用户偏好简档248的各种偏好可以是动态的,或适应于各种其他因素。例如,一个或多个偏好或其重要性可以基于上下文参数244或情况改变,诸如基于时间、位置、先行事件306、后续事件304、目的地类别314、请求的源起、或其组合。
109.用户偏好简档248还可以包括对应于参数条件362的因素调整集360。因素调整集360是用于基于情况而动态调整偏好或其重要性中的一个或多个以反映对应的最终用户的综合偏好的机制。因素调整集360可以包括一组权重、案例或场景、方程、方法或过程、或其组合,用于调整和组合用户偏好简档248内的各个偏好。
110.因素调整集360可以控制初始简档344、操纵偏好346、路段偏好348、优化偏好354、品牌偏好356或其组合在生成与系统用户108的当前情况或上下文相对应的图2的基于偏好的路线234中的贡献。参数条件362是指示偏好的改变或特定组合的对应的最终用户的具体场景或条件的表示。
111.参数条件362可以对应于案例或场景、输入或控制因素或其组合,用于指示具体偏好的权重或重要性的具体组合。参数条件362可以对应于上下文参数244的一组或多组特定组合或值。参数条件362可以是用于实现某一组权重或具体方程的限定符或条件语句。参数条件362可以对应于“if(如果)”或“when(当)”条件,用于实现对应于“then(则)”或适用的实现方案的因素调整集合360。
112.用户偏好简档248还可包括道路学习率364、到达时间调整366或其组合。道路学习率364可以是对应的最终用户学习和记住物理环境或路径的能力的表示。道路学习率364可以对应于请求对于特定目的地的导航引导的次数或频率。道路学习率364可以对应于在无辅助地行驶到相同位置之前对该同一位置的导航请求的请求次数或请求之间的持续时间。
113.到达时间调整366是最终用户的驾驶率的表示。到达时间调整366可以对应于相对于计算的行驶时间或到达时间的系统用户108的行驶时间中的模式。到达时间调整366可以包括估计到达时间的个性化因素,其特定于系统用户108的驾驶习惯或模式。
114.导航系统100可以基于用户历史246生成用户偏好简档248或其中的构成部分。导航系统100可以基于非默认选择242、上下文参数244、或其组合而生成用户偏好简档248。导航系统100还可以基于将非默认选择242与默认选择进行比较或对比来生成用户偏好简档248。导航系统100可以使用模式分析机制、机器学习机制、预定方法或过程、或其组合来生成用户偏好简档248。关于用户偏好简档248的生成的细节在下面讨论。
115.现在参考图4,其中示出了导航系统100的显示界面的另一个示例。该显示界面可以显示图2以及图3的上下文参数244、图2的用户历史246、图2的用户偏好简档248、或其组合的细节。
116.导航系统100的界面显示可以示出导航参数430。导航窗口430可以包括对方位、时间、位置、目的地点和路线的描述。导航窗口430可以包括位置信息、时间信息、可能目的地的搜索结果、可能的路线信息或其组合。例如,导航窗口430可以包括起点404、终点406、驾驶模式、候选路线集212、基于偏好的路线234、搜索请求410、兴趣点(poi)418、以及搜索结
果集412。
117.行驶路线436表示一个位置(通常是起点404)到另一目的地(通常是终点406)之间的路径。起点404表示在行驶路线436开始处的初始位置信息、初始时间信息或其组合。终点406表示行驶路线436终点处的最终位置信息、最终行驶时间信息或其组合。例如,行驶路线可以在导航系统100的界面显示器上以图形方式描绘。起点404、终点406或其组合可以被呈现为位置坐标、时间表示、位置的文本表示,或以独特的方式来准确标识时间信息、目的地信息或其组合。
118.驾驶模式402可以表示车辆是如何操作的。例如,驾驶模式可以是自动模式,或自由驾驶模式428、或其组合。在自动模式下,导航系统100在行驶路线436的至少一部分上完全操作车辆。自动操作模式可以包括在车辆在操作中时的最小人为干预。
119.在自由驾驶模式428下,其中系统用户108在不利用图2的所选路线236并且不利用来自导航系统100的任何导航特征的情况下行驶。例如,在自由驾驶模式428下的驾驶模型可以允许基于驾驶员的需要或期望而自发改变行驶路线436。这些自发改变可以基于表面条件。
120.条件改变446可以导致对行驶路线436、偏离路线426或其组合的修改。条件改变446也可以是诸如表面条件改变、天气改变、系统用户108的自发决定、或其他因素的许多其他事情的结果。例如,系统用户108可能正在行驶路线436上驾驶并且接收到去往不同目的地的电话呼叫。这可以被认为是条件改变446。
121.条件改变446可以导致更新路线444。更新路线444可以是从先前计划的路线发生改变的行驶路径436、偏离路径426或其组合的路段。例如,如果存在街道封闭,则条件改变446需要将路线444更新到行驶路径436。
122.更新路线444表示对候选路线214、行驶路线436或其组合的实时修改。更新路线444可以包括时间修改、路线修改或其组合。例如,在图4中,行驶路线436可以被图1的系统用户108的决定修改为包将附加部分(诸如偏离路线426)包括到行驶路线436。
123.搜索请求410可以是图1的系统用户108的查询,寻找特定位置、一组位置或其组合。搜索请求410可以是兴趣点(poi)418、文本搜索、位置搜索或其组合。例如,搜索请求410可以是查找系统用户108的位置5英里半径内的所有杂货店的请求。搜索请求410可以生成搜索结果集412。
124.搜索结果集412是试图为搜索请求410提供答案的可能结果的列表。搜索结果412可以包括位置的列表以及到每个位置的到达时间估计216。例如,搜索结果集412可以包括全部在5英里半径内的三个杂货店的列表以及从当前位置440到每个目的地的时间。
125.搜索结果集412可以包括第一搜索结果414、第二搜索结果432或其组合。第一搜索结果414可以包括相关联的参数。与第一搜索结果414相关联的参数可以包括偏离416,诸如偏离距离420、偏离时间448、最小偏离450或其组合。第一搜索结果414可以基于用户简档202而在其他搜索结果之前列出。搜索结果集412还可以包括相关联的参数,诸如gps坐标、营业信息、与搜索结果相关的其他信息或其组合。
126.偏离416可以表示第一搜索结果414可能偏离行驶路线436的长度、时间或其组合。例如,偏离416可以是距行驶路线436一英里的长度,距行驶路线436的10分钟的时间,或其组合。
127.如果偏离416是基于距离的,则这可以对应于偏离距离420。偏离距离420可以表示长度、相对于行驶路线436的路径,或其组合。例如,偏离距离420可以包括偏离行驶路线436的总长度。在另一个示例中,偏离距离420可以包括偏离路径、路径的路段长度、或其组合。
128.如果偏离416是基于时间的,则这可以对应于偏离时间448。偏离时间448可以表示时间单位、相对于行驶路线436的总时间差,或其组合。例如,偏离时间448可以包括相对于经由行驶路线436行驶的原始估计时间的以分钟为单位的总时间。在另一个示例中,偏离时间448可以包括从一个方位到远离行驶路线436的不同位置的时间。
129.最小偏离450可以表示最小的偏离416。例如,如果偏离416是距离,则最小偏离可以表示距行驶路线436的最小长度。在另一个示例中,如果偏离416被表示为时间,则最小偏离450可以表示距行驶路线436的最小时间。在另一个示例中,如果偏离416是时间和距离的组合,则最小偏离450可以表示最小的时间和距离的组合。
130.兴趣点(poi)418可以是对来自搜索结果集412的结果的特定选择。例如,导航系统100可以基于用户简档202自动选择兴趣点418。系统用户108还可以手动地从搜索结果集412中选择兴趣点418。例如,兴趣点418可以是系统用户108基于偏离路线426选择的特定杂货店。
131.可以存在多于一个的兴趣点418。可以存在第一候选兴趣点422、第二候选兴趣点424或其组合。这些在图4中以图形方式表示。第一候选兴趣点422可以是系统用户108感兴趣的可能位置。第二候选兴趣点424也可以是系统用户108感兴趣的不同位置。例如,系统用户108可能想要去杂货店。存在表示两个候选兴趣点的两个杂货店。
132.偏离路线426是从行驶路线436到兴趣点418的离开路径。偏离路线426可以是行驶路线436和兴趣点418之间的最小距离。偏离路线426可以是行驶路线436和兴趣点418之间的最小时间。可以存在确定偏离路线426及其与兴趣点418和行驶路线436的关系的其他参数或因素。例如,交通考虑可以使特定偏离路线426比另一偏离路线426与系统用户108更为相关。
133.偏离路线426、行驶路线436或其组合可以形成修正路径438。修正路径438结合行驶路线436的一部分以及偏离路线以形成兴趣点418、沿行驶路线的当前位置440和行驶路线436之间的路径。例如,修正路径438可以将图1的系统用户108从当前位置440带到兴趣点418,然后从兴趣点418回到将图1的系统用户108带到终点406的行驶路线436上的点。在此示例中,偏离416可以是偏离时间448、诸如长度度量的偏离距离420、或其组合。偏离416可以被用于确定偏离路线426。此偏离路线426可与兴趣点418和行驶路线436一起使用以开发修正路径438。修正路径438可以使用如图4所示的坐标、作为地图上的图形描绘或其组合来描绘。
134.导航系统100的界面显示434可以示出导航窗口430,该导航窗口还可以包括路线分解简档220、操纵集222、路段类别集224、操纵延迟时间228和候选结果442。此导航窗口可应用于行驶路线436、偏离路线426、或其组合。
135.候选结果442可以基于或来自图2的非默认选择242、搜索结果集412、兴趣点418或其组合。候选结果442是与默认选择不同的行驶路线436、偏离路线426、或其组合的实例。候选结果442可以包括非高效选择。候选结果442可以包括与基于效率的选择(诸如图2的最短路线238或图2的最快路线240、偏离路线426或其组合)不同的、与基于偏好的路线234不同
的候选路线214、偏离416、偏离路线426、搜索结果集412或其组合的实例。
136.候选结果442可以包括图2的所选路线236、偏离路线426、偏离416或其组合(其不是如导航系统100所估计的图2的最短路线238、不是图2的最快路线240、不是图2的基于偏好的路线234或其组合)。导航系统100、系统用户108或其组合可以使用非默认选择242、偏离路线426、偏离416或其组合以及与这些相关联的条件或情况,以确定系统用户108的偏好。
137.现在参考图5,其中示出了导航系统100的示例性框图。导航系统100可以包括第一设备102、网络104和第二设备106。第一设备102可以在第一设备传输508中通过网络104向第二设备106发送信息。第二设备106可以在第二设备传输510中通过网络104向第一设备102发送信息。
138.出于说明的目的,导航系统100被示为具有作为客户端设备的第一设备102,但是应当理解导航系统100可以具有作为不同类型的设备的第一设备102。例如,第一设备102可以是具有显示接口的服务器。
139.同样出于说明的目的,导航系统100被示为具有作为服务器的第二设备106,但是应当理解导航系统100可以具有作为不同类型的设备的第二设备106。例如,第二设备106可以是客户端设备。
140.在本发明的此实施例中,为了描述的简洁,第一设备102将被描述为客户端设备并且第二设备106将被描述为服务器设备。本发明实施例不限于对设备类型的此选择。该选择是本发明的实施例的示例。
141.第一设备102可以包括第一控制电路512、第一存储电路514、第一通信电路516、以及第一用户接口518和定位电路520。第一控制电路512可以包括第一控制接口522。第一控制电路512可以执行第一软件526以提供导航系统100的智能。
142.第一控制电路512可以以多种不同方式实现。例如,第一控制电路512可以是处理器、专用集成电路(asic)、嵌入式处理器、微处理器、硬件控制逻辑、硬件有限状态机(fsm)、数字信号处理器(dsp)或其组合。第一控制接口522可以用于第一控制电路512与第一设备102中的其他功能单元或电路之间的通信。第一控制接口522也可以用于第一设备102外部的通信。
143.第一控制接口522可以从其他功能单元/电路或从外部源接收信息,或者可以将信息发射到其他功能单元/电路或到外部目的地。外部源和外部目的地是指第一设备102外部的源和目的地。
144.取决于哪些功能单元/电路或外部单元/电路正在与第一控制接口522对接,第一控制接口522可以以不同的方式实现,并且可以包括不同的实现方案。例如,第一控制接口522可以用压力传感器、惯性传感器、微机电系统(mems)、光学电路、波导、无线电路、有线电路或其组合来实现。
145.第一存储电路514可以存储第一软件526。第一存储电路514还可以存储相关信息,诸如表示传入图像的数据、表示先前呈现的图像的数据、声音文件或其组合。
146.第一存储电路514可以是易失性存储器、非易失性存储器、内部存储器、外部存储器或其组合。例如,第一存储电路514可以是诸如非易失性随机存取存储器(nvram)、闪存、磁盘存储的非易失性存储或诸如静态随机存取存储器(sram)的易失性存储。
147.第一存储电路514可以包括第一存储接口524。第一存储接口524可以用于第一存储电路514与第一设备102中的其他功能单元或电路之间的通信。第一存储接口524可以也可以被用于第一设备102外部的通信。
148.第一存储接口524可以从其他功能单元/电路或从外部源接收信息,或者可以将信息发射到其他功能单元/电路或到外部目的地。外部源和外部目的地是指第一设备102外部的源和目的地。
149.取决于哪些功能单元/电路或外部单元/电路正在与第一存储电路514对接,第一存储接口524可以包括不同的实现方案。第一存储接口524可以用与第一控制接口522的实现类似的技术和技艺来实现。
150.第一通信电路516可以实现去往或者来自第一设备102的外部通信。例如,第一通信电路516可以允许第一设备102与图1的第二设备106、诸如外围设备或台式计算机的附件以及网络104通信。
151.第一通信电路516还可以用作通信枢纽,允许第一设备102用作网络104的一部分并且不限于作为网络104的端点或终端电路。第一通信电路516可以包括有源和无源组件,诸如微电子或天线,用于与网络104交互。
152.第一通信电路516可以包括第一通信接口528。第一通信接口528可以用于第一通信电路516与第一设备102中的其他功能单元或电路之间的通信。第一通信接口528可以从其他功能单元/电路接收信息或可以将信息发射到其他功能单元或电路。
153.取决于哪些功能单元或电路正在与第一通信电路516对接,第一通信接口528可以包括不同的实现方案。第一通信接口528可以用与第一控制接口522的实现类似的技术和技艺来实现。
154.第一用户接口518允许用户(未示出)与第一设备102对接和交互。第一用户接口518可以包括输入设备和输出设备。第一用户接口518的输入设备的示例可以包括小键盘、触摸板、软键、键盘、麦克风、用于接收远程信号的红外传感器或其任何组合以提供数据和通信输入。
155.第一用户接口518可以包括第一显示接口530。第一显示接口530可以包括输出设备。第一显示接口530可以包括显示器、投影仪、视频屏幕、扬声器或其任何组合。
156.第一控制电路512可以操作第一用户接口518以显示由导航系统100生成的信息。第一控制电路512还可以为导航系统100的其他功能执行第一软件526,包括接收来自定位电路520的位置信息。第一控制电路512还可以执行第一软件526以经由第一通信电路516与网络104交互。
157.作为示例,定位电路520可以生成第一设备102的位置信息、当前前进方向、当前加速度和当前速率。定位电路520可以以多种方式实现。例如,定位电路520可以用作全球定位系统、惯性导航系统、蜂窝塔定位系统、压力定位系统或其任何组合的至少一部分。又例如,定位电路520可以利用诸如加速度计或全球定位系统(gps)接收器的组件。
158.定位电路520可以包括第一定位接口532。第一定位接口532可以用于定位电路520与第一设备102中的其他功能单元或电路之间的通信。第一定位接口532也可以是用于第一设备102外部的通信。
159.第一定位接口532可以从其他功能单元/电路或从外部源接收信息,或者可以将信
息发射到其他功能单元/电路或到外部目的地。外部源和外部目的地是指第一设备102外部的源和目的地。
160.取决于哪些功能单元/电路或外部单元/电路正在与定位电路520对接,第一定位接口532可以包括不同的实现方案。第一定位接口532可以用与第一控制电路512的实现类似的技术和技艺来实现。
161.第二设备106可以被优化以在具有第一设备102的多设备实施例中实现本发明的实施例。与第一设备102相比,第二设备106可以提供附加的或更高的性能处理能力。第二设备106可以包括第二控制电路534、第二通信电路536、第二用户接口538和第二存储电路546。
162.第二用户接口538允许用户(未示出)与第二设备106对接和交互。第二用户接口538可以包括输入设备和输出设备。第二用户接口538的输入设备的示例可以包括小键盘、触摸板、软键、键盘、麦克风或其任何组合以提供数据和通信输入。第二用户接口538的输出设备的示例可以包括第二显示接口540。第二显示接口540可以包括显示器、投影仪、视频屏幕、扬声器或其任何组合。
163.第二控制电路534可以执行第二软件542以提供导航系统100的第二设备106的智能。第二软件542可以与第一软件526结合操作。与第一控制电路512相比,第二控制电路534可以提供附加性能。
164.第二控制电路534可以操作第二用户接口538以显示信息。第二控制电路534还可以为导航系统100的其他功能执行第二软件542,包括操作第二通信电路536以经由网络104与第一设备102通信。
165.第二控制电路534可以以多种不同方式实现。例如,第二控制电路534可以是处理器、嵌入式处理器、微处理器、硬件控制逻辑、硬件有限状态机(fsm)、数字信号处理器(dsp)或其组合。
166.第二控制电路534可以包括第二控制接口544。第二控制接口544可以用于第二控制电路534与第二设备106中的其他功能单元或电路之间的通信。第二控制接口544也可以用于第二设备106外部的通信。
167.第二控制接口544可以从其他功能单元/电路或从外部源接收信息,或者可以将信息发射到其他功能单元/电路或到外部目的地。外部源和外部目的地是指第二设备106外部的源和目的地。
168.取决于哪些功能单元/电路或外部单元/电路正在与第二控制接口544对接,第二控制接口544可以以不同的方式实现并且可以包括不同的实现方案。例如,第二控制接口544可以用压力传感器、惯性传感器、微机电系统(mems)、光学电路、波导、无线电路、有线电路或其组合来实现。
169.第二存储电路546可以存储第二软件542。第二存储电路546还可以存储诸如表示传入图像的数据、表示先前呈现的图像的数据、声音文件或其组合的信息。第二存储器电路546可以被改变大小以提供附加存储容量以补充第一存储电路514。
170.出于说明的目的,第二存储电路546被示为单个元素,但应理解第二存储电路546可以是存储元素的分布。同样出于说明的目的,导航系统100被示为具有作为单层次存储系统的第二存储电路546,但是应当理解导航系统100可以具有不同配置的第二存储电路546。
例如,第二存储电路546可以用不同的存储技术形成,形成包括不同级别的缓存、主存储器、旋转介质(rotating media)或离线存储的存储器层次系统。
171.第二存储电路546可以是易失性存储器、非易失性存储器、内部存储器、外部存储器或其组合。例如,第二存储电路546可以是诸如非易失性随机存取存储器(nvram)、闪存、磁盘存储的非易失性存储或诸如静态随机存取存储器(sram)的易失性存储。
172.第二存储电路546可以包括第二存储接口548。第二存储接口548可以用于第二存储电路546与第二设备106中的其他功能单元或电路之间的通信。第二存储接口548可以也可以被用于第二设备106外部的通信。
173.第二存储接口548可以从其他功能单元/电路或从外部源接收信息,或者可以将信息发射到其他功能单元/电路或到外部目的地。外部源和外部目的地是指第二设备106外部的源和目的地。
174.取决于哪些功能单元/电路或外部单元/电路正在与第二存储电路546对接,第二存储接口548可以包括不同的实现方案。第二存储接口548可以用与第二控制接口544的实现类似的技术和技艺来实现。
175.第二通信电路536可以实现去往或者来自第二设备106的外部通信。例如,第二通信电路536可以允许第二设备106经由网络104与第一设备102通信。
176.第二通信电路536还可以用作通信枢纽,允许第二设备106用作网络104的一部分并且不限于网络104的端点或终端单元或电路。第二通信电路536可以包括有源和无源组件,诸如微电子或天线,用于与网络104交互。
177.第二通信电路536可以包括第二通信接口550。第二通信接口550可以用于第二通信电路536与第二设备106中的其他功能单元或电路之间的通信。第二通信接口550可以从其他功能单元/电路接收信息或可以将信息发射到其他功能单元或电路。
178.取决于哪些功能单元或电路正在与第二通信电路536对接,第二通信接口550可以包括不同的实现方案。第二通信接口550可以用与第二控制接口544的实现类似的技术和技艺来实现。
179.第一通信电路516可以与网络104耦合以在第一设备传输508中向第二设备106发送信息。第二设备106可以在第二通信电路536中从网络104的第一设备传输508接收信息。
180.第二通信电路536可以与网络104耦合以在第二设备传输510中向第一设备102发送信息。第一设备102可以在第一通信电路416中从网络104的第二设备传输510接收信息。导航系统100可由第一控制电路512、第二控制电路534或其组合来执行。出于说明的目的,第二设备106被示为有具有第二用户接口538、第二存储电路546、第二控制电路534和第二通信电路536的分区,但是应当理解第二设备106可以具有不同的分区。例如,第二软件542可以被不同地分区,使得它的一些或全部功能可以在第二控制电路534和第二通信电路536中。而且,为清楚起见,第二设备106可以包括未在图5中示出的其他功能单元或电路。
181.第一设备102中的功能单元或电路可以个别于或独立于其他功能单元或电路工作。第一设备102可以个别于或独立于第二设备106和网络104工作。
182.第二设备106中的功能单元或电路可以个别于或独立于其他功能单元或电路工作。第二设备106可以个别于或独立于第一设备102和网络104工作。
183.上述功能单元或电路可以以硬件实现。例如,功能单元或电路中的一个或多个可
以使用门、电路、处理器、计算机、集成电路、集成电路核心、压力传感器、惯性传感器、微机电系统(mems)、无源设备、具有用于执行软件功能、其中的一部分或其组合的指令的物理非暂时性存储介质来实现。
184.出于说明的目的,导航系统100通过第一设备102和第二设备106的操作来描述。应当理解,第一设备102和第二设备106可以操作导航系统100的任何模块和功能。
185.现在参考图6,其中示出了导航系统100的控制流。导航系统100可以包括简档模块602、搜索模块646、跟踪模块604、分解模块606、分析模块608、偏好模块610、路线模块614、地图评估模块616,或其组合。
186.简档模块602可以耦合到跟踪模块604。搜索模块646可以耦合到简档模块602、跟踪模块604、或其组合。跟踪模块604可以耦合到分解模块606。分解模块606可以耦合到分析模块608。分析模块608可以耦合到偏好模块610,该偏好模块610还可以耦合到路线模块614、地图评估模块616或其组合。路线模块614还可以耦合到跟踪模块604。
187.这些模块可以使用有线或无线连接、通过使一个模块的输出作为另一个模块的输入、通过使一个模块的操作影响另一个模块的操作、或其组合来进行耦合。除了它们之间的连接器之外,这些模块可以直接耦合而没有介入结构或对象,或者可以间接耦合。
188.简档模块602被配置为标识导航系统100的一个或多个最终用户。简档模块602可以标识图1的系统用户108、图1的另外的参与者110中的一个或多个、与之相关联的详细信息,或其组合。
189.例如,简档模块602可以识别系统用户108、另外的参与者110中的一个或多个或其组合。又例如,简档模块602还可以确定与系统用户108、另外的参与者110中的一个或多个或其组合相关联的图2的用户简档202。又例如,简档模块602可以确定跨多个用户的相似性或模式。简档模块602可以包括用于标识一个或多个最终用户的识别模块618、用户分组模块620或其组合。
190.识别模块618被配置为识别一个或多个最终用户。识别模块618可以识别系统用户108、另外的参与者110中的一个或多个,或其组合。识别模块618可以基于将传入的输入信息与对应于系统用户108、另外的参与者110中的一个或多个或其组合的标识信息进行匹配来识别系统用户108、另外的参与者110中的一个或多个或其组合。
191.例如,识别模块618可以包括关于物理特征的预定或已知信息(诸如声音签名、面部特征、指纹或其组合),其对应于每个最终用户并且对于每个最终用户是唯一的。识别模块618可以包括从其他账户导入的、在账户或系统初始化期间设置的、由真实的或可信赖的来源提供的(或其组合)的关于物理特征的预定或已知信息。
192.继续该示例,识别模块618可以基于将传入到导航系统100的信号或信息(诸如通过图5的第一用户接口518、图5的第二用户接口538、图5的第一通信电路416,图5的第二通信电路536,或其组合而传入的视觉或音频信息)匹配到已知或预定的物理信息来识别系统用户108、另外的参与者110中的一个或多个或其组合。识别模块618可以使用图5的第一控制电路512、图5的第二控制电路534或其组合将预定或已知的物理信息与输入信息进行比较。
193.又例如,识别模块618可以包括预定的或已知的标识符(诸如帐户名或电子邮件地址)以及对应的认证机制(诸如密码或密钥)。识别模块618可以使用一个或多个用户接口、
通信电路、设备接口或其组合来接收标识符和认证机制。识别模块618可以基于将与系统用户108、另外的参与者110中的一个或多个或其组合对应的标识符和认证机制进行匹配来识别系统用户108、另外的参与者110中的一个或多个或其组合。
194.识别模块618还可以基于确定对应描述来标识最终用户。识别模块618可以确定与系统用户108、另外的参与者110中的一个或多个或其组合相关联的用户简档202。识别模块618可以基于生成用户简档202、调用或访问用户简档202、或其组合来确定用户简档202。
195.识别模块618可以基于由对应的最终用户生成的信息(诸如在帐户的初始化或创建或授予对系统、设备、服务的访问期间生成的信息)、由搜索模块646提供的信息、或其组合,来生成用户简档202。例如,作为帐户创建或简档设置过程的一部分,识别模块618可以提示或查询系统用户108、另外的参与者110中的一个或多个或其组合以获取描述性信息(诸如姓名、地址、重要位置、偏好、人口统计、职业信息、相关联的车辆、物理标识符、帐户标识符、认证机制或其组合)。
196.又例如,识别模块618可以接收包括关于系统用户108、另外的参与者110中的一个或多个或其组合的必要描述性信息的调查、设置或初始化文件。又例如,识别模块618可以访问和接收来自现有简档或描述的描述性信息,诸如来自社交网络或包括职业或个人描述的网页的描述性信息。在另一个示例中,识别模块618可以从搜索模块646接收搜索结果集412、搜索请求410或其组合。
197.识别模块618可以格式化和组织描述性信息,以为系统用户108、另外的参与者110中的一个或多个或其组合的对应实例生成用户简档202。识别模块618可以将用户简档202存储在图5的第一存储电路514、图5的第二存储电路546或其组合中。
198.识别模块618可以基于对访问导航系统100的最终用户的认证来调用或访问用户简档202。识别模块618可以使用图5的第一控制接口522、图5的第二控制接口544、图5的第一存储接口524、图5的第二存储接口548、图5的第一通信接口528、图5的第二通信接口550、或其组合来访问存储的用户简档202的实例。
199.识别模块618可以使用第一控制电路512、第二控制电路534或其组合来将所访问的简档信息与特定的最终用户进行比较。识别模块618可以诸如通过匹配标识符、认证、物理标识符或其组合来标识对应的用户简档202,以访问和调用与最终用户对应的用户简档202。
200.用户分组模块620被配置为确定跨多个用户的相似性或模式。用户分组模块620可以生成图2的用户分组208,包括图2的相关分组210。用户分组模块620可以确定相关分组210,用于表示另外的参与者110中的在一个或多个方面类似于系统用户108的一个或多个参与者。
201.用户分组模块620可以基于比较用户分组208的实例来确定相关分组210。用户分组模块620可以基于一种或多种类型或类别的描述性信息来确定相关分组210。例如,用户分组模块620可以确定针对系统用户108的相关分组210,该相关分组210用于表示另外的参与者110中的具有匹配的人口统计信息、重要位置的地理地带或区域(或其组合)的一个或多个参与者。
202.作为更具体的示例,用户分组模块620可以基于最终用户在同一街区上共享“家”、对于“工作”或“学校”标识相同的地址或实体名称、围绕这样的重要位置的周围地带或缓冲
区相互重叠、或其组合来确定相关分组210。同样作为更具体的示例,用户分组模块620可以基于最终用户在重要位置之间共享估计的路线、围绕这样的估计的路线的周围地区或缓冲区相互重叠来确定相关分组210。
203.用户分组模块620可以使用如上所述的一个或多个接口、一个或多个通信电路或其组合从一个或多个存储电路访问用户简档202的实例。用户分组模块620可以使用第一控制电路512、第二控制电路534或其组合生成用户分组208,包括比较用户简档202的实例并确定多个用户之间的相似性或模式。用户分组模块620可以将用户分组208存储在第一存储电路514、第二存储电路546或其组合中。
204.在标识出一个或多个最终用户之后,控制流可以从简档模块602传递到跟踪模块604、搜索模块646、或其组合。例如,控制流可以通过将处理结果(诸如用户简档202或用户分组)作为来自简档模块602的输出来传递到跟踪模块604的输入。在另一个示例中,控制流可以通过将处理结果(诸如用户简档202或用户分组)作为来自简档模块602的输出来传递到搜索模块646的输入。
205.又例如,控制流还可以通过将处理结果存储在跟踪模块604已知且可访问的位置来进行传递。又例如,控制流还可以通过通知跟踪模块604(诸如通过使用标志、中断、状态信号或其组合进行通知)来传递。又例如,控制流还可以使用上述过程的组合来进行传递。
206.搜索模块646耦合到简档模块602、跟踪模块604、路线模块614或其组合。搜索模块646被配置为向最终用户发送信息、从最终用户接收信息、或其组合。例如,搜索模块646可以从最终用户接收图4的搜索请求410。
207.搜索模块646还可以向简档模块602、跟踪模块604、路线模块614或其组合发送信息、从其接收信息、或其组合。例如,搜索模块可以将图4的搜索请求410、图4的poi 418、图4的搜索结果集412或其组合发送到跟踪模块。
208.搜索模块646可以查找与图4的搜索请求410相关联的信息。此信息可以包括企业名称、位置标识、gps坐标、距起点404、终点406、当前位置440的距离,或其组合。搜索结果模块646可以将此信息包括作为搜索结果集412的一部分。例如,搜索模块646可以查找图4的第一搜索结果414、图4的第二搜索结果432或其组合。图4的第一搜索结果414可以包括图4的偏离416、图4的偏离路线426、或其组合。
209.搜索模块646还可以使用来自图4的搜索结果集412的信息并将此信息发送到简档模块602、跟踪模块604、路线模块614或其组合。例如,搜索模块646可以将图4的偏离416、图4的偏离路线426或其组合包括作为搜索结果集412的一部分。
210.跟踪模块604被配置为确定最终用户的移动或行驶。跟踪模块604可以基于图2的候选路线集212、图2的所选路线236、图3的先前轨迹326、与其相关联的图2的上下文参数244、图4的搜索结果集412、或其组合来确定移动或行驶信息。
211.跟踪模块604可以确定、更新和维护图2的用户历史246。跟踪模块604可以在图2的用户历史246中记录位置信息,例如坐标或位置标记。跟踪模块604还可以在图2的用户历史246中记录最终用户的路线选择。跟踪模块604还可以处理和分析图2的用户历史246以获得模式、含义、重要性或其组合。跟踪模块604可以向搜索模块646发送数据、从其接收数据、或其组合。跟踪模块604可以包括选择模块622、自由驾驶模块624、上下文模块626或其组合,以用于确定系统用户108、另外的参与者110中的一个或多个、或其组合的移动或行驶信息。
212.选择模块622被配置为标识最终用户的路线选择。选择模块622可以标识候选路线集212、所选路线236、或其组合。选择模块622可以基于对来自最终用户的搜索或导航请求以及对应的结果进行跟踪来标识路线选择。
213.选择模块622可以基于存储由导航系统100响应于图4的搜索请求410或来自最终用户的导航请求而计算的候选路线集212、其中的候选路线214的一个或多个实例、候选目的地或其组合,来标识选择。选择模块622还可标识由诸如系统用户108或另外的参与者110中的一个或多个的最终用户从候选路线集212、搜索结果集或其组合中选择的所选路线236。
214.选择模块622还可以标识图2的针对所选路线236、偏离路线426、偏离416或其组合的非默认选择242。选择模块622可以对比候选路线集212来分析所选路线236,以识别非默认选择242。
215.例如,当所选路线236不是默认选择、不是使用图2的用户偏好简档248生成的候选路线214、或其组合时,选择模块622可以标识非默认选择242。作为更具体的示例,当所选路线236不是图2的最短路线238、不是图2的最快路线240、不是图2的偏好路线234或其组合时,选择模块622可以将所选路线236标识为非默认选择242。
216.选择模块622可以基于在候选路线集212的生成或候选路线214的计算期间的分类来标识非默认选择242。选择模块622可以在候选路线214的计算或候选路线集212的生成期间,将候选路线214的一个或多个实例分类为最短路线238、最快路线240、基于偏好的路线234或其组合。分类的细节在下面讨论。
217.选择模块622还可以基于将所选路线236与候选路线集212内的候选路线214的其他实例进行比较来标识非默认选择242。选择模块622可以计算对应于候选路线集212内的候选路线214的每个实例的图2的到达时间估计216、图2的候选距离218、或其组合。
218.选择模块622还可以标识偏离416、偏离路线426、搜索结果集412、候选结果442、或其组合。例如,选择模块可以确定偏离416并基于偏离416计算偏离路线426。
219.选择模块622可以跨候选路线集212内的路线比较和分析各个计算结果。选择模块622可以根据跨候选路线集212内的路线的候选路线到达时间估计216、候选距离218或其组合的比较,在所选路线236不对应于默认选择或高效路线时标识非默认选择242。
220.选择模块622可以使用第一控制电路512、第二控制电路534或其组合来标识最终用户的路线选择。选择模块622可以使用一个或多个接口、一个或多个通信电路或其组合来访问存储在第一存储电路514、第二存储电路546或其组合中的路线或与其相关联的信息。选择模块622可以在第一存储电路514、第二存储电路546或其组合中存储路线选择,诸如所选路线236、非默认选择242或其组合的标识。
221.自由驾驶模块624被配置为分析最终用户的与路线选择无关联的移动或行驶。自由驾驶模块624可以分析系统用户108、另外的参与者110中的一个或多个、或其组合的自由驾驶会话。自由驾驶模块624可以分析自由驾驶会话的先前或当前实例。
222.自由驾驶模块624可以标识最终用户或对应于最终用户的设备的地理位置。例如,自由驾驶模块624可以使用图5的定位电路520、第一通信电路516、第二通信电路536或其组合来标识地理位置。自由驾驶模块624可以存储所选路线236之外的位置信息,而没有针对自由驾驶会话的图4的搜索请求410、导航请求或其组合。自由驾驶模块624还可以存储对应
于位置信息的图3的时间标记328。
223.自由驾驶模块624可以使用第一控制电路512、第二控制电路534或其组合来分析地理位置。自由驾驶模块624可以通过根据时间标记328的对应实例对位置进行整理或排序来分析地理位置。自由驾驶模块624还可以确定对应于自由驾驶会话的图3的目的地估计332。
224.自由驾驶模块624可以以各种方式确定目的地估计332。例如,自由驾驶模块624可以基于上下文参数244来确定目的地估计332。作为更具体的示例,自由驾驶模块624可以基于图3的用户消息集310、另一乘客的路线选择或导航请求、日历信息、或其组合来确定目的地估计332。又例如,自由驾驶模块624可以基于图3的用户历史246来确定目的地估计332。
225.又例如,自由驾驶模块624可以基于对在一位置花费的时间或在位置之间的持续时间进行分析来确定目的地估计332。自由驾驶模块624可以使用图3的时间过滤器334、图3的目的地时间阈值338、图3的中间时间阈值340、或其组合来确定。自由驾驶模块624可以使用时间过滤器334根据位置信息和时间标记328或在位置信息处的持续时间来确定图3的候选停靠点336。
226.继续该示例,自由驾驶模块624还可以将中间时间阈值340、目的地时间阈值338或其组合与候选停靠点336所关联的时间标记328或持续时间进行比较。自由驾驶模块624可以基于此比较将候选停靠点336确定为图3的目的地估计332或中间停靠点342。
227.自由驾驶模块624还可以动态地调整时间过滤器334、目的地时间阈值338、中间时间阈值340、或其组合。自由驾驶模块624可以基于或根据上下文参数244动态地进行调整。自由驾驶模块624可以基于用户的情况来增大或减小过滤器、阈值、或其组合。
228.例如,当当前时间在交通拥塞时间段内时,自由驾驶模块624可以增大过滤器、阈值或其组合。又例如,当图4的当前位置440在与高密度行人相关联的预定地带(诸如学校地带、市中心、购物地带)内、在机构和对应停车区之间,或其组合时,自由驾驶模块624可以增大过滤器、阈值或其组合。
229.自由驾驶模块624可以使用目的地估计332和地理信息来标识到目的地估计332的先前轨迹326。自由驾驶模块624可以将先前轨迹326标识为诸如系统用户108、另外的参与者110中的一个或多个、或其组合中的对应最终用户在目的地估计332、导航请求或其组合的多个实例之间所穿越的一系列连接的位置。
230.自由驾驶模块624可以将地理位置存储在第一存储电路514、第二存储电路546或其组合中。自由驾驶模块624还可以将目的地估计332、中间停靠点342、候选停靠点336、先前轨迹326或其组合存储在第一存储电路514、第二存储电路546或其组合中。自由驾驶模块624还可以使用一个或多个接口、一个或多个通信电路或其组合来访问过滤器、阈值、地理信息、上下文参数244或其组合。
231.自由驾驶模块624可以访问搜索模块646、选择模块622或其组合。自由驾驶模块624可以标识当前位置440、偏离416、偏离路线426、兴趣点418、行驶路线436、起点404、终点406或其组合。
232.在另一示例中,图1的系统用户108可能正沿着从起点404(诸如工作地)到终点406(诸如家)的行驶路线436驾驶。在沿着行驶路线436驾驶时,系统用户108可能决定去连锁餐厅获取食物。本例中的连锁餐厅可以是兴趣点418。图1的系统用户108可以通过搜索模块
646实行搜索。搜索模块464可以将搜索结果集412发送给跟踪模块604。驾驶模块624可以存储地理位置和偏离416。
233.上下文模块626被配置为确定上下文参数244、偏离416或其组合。上下文模块626可以实时动态地确定上下文参数244、偏离416或其组合。上下文模块626可以确定上下文参数244、偏离416或其组合,包括图3的用户上下文302、图3的路线上下文312或其组合。
234.上下文模块626可以存储上下文参数244、偏离416或其组合以供以后进一步处理。上下文模块626可以确定对应于所选路线236、偏离路线426、包括非默认选择242的候选结果442、候选路线集212、搜索结果集412、与其相关联的请求或搜索、先前跟踪326或其组合的上下文参数244、偏离416或其组合。
235.上下文模块626可以基于访问具体电路、存储器位置、设备或其组合来标识上下文参数244、偏离416或其组合。例如,上下文模块626可以从与对应应用(诸如日历或日程应用或通讯应用)相关联的存储器位置标识图3的后续事件304、图3的先行事件306、用户消息集310或其组合。
236.又例如,上下文模块626可以访问定位电路520以获取位置信息。在另一示例中,上下文模块626可以访问搜索模块646以获取搜索结果集412信息。
237.又例如,上下文模块626还可以根据移动信息或来自系统用户108的输入,将图4的当前位置440、当前时间、或其组合存储为图3的请求源起位置316、图3的请求时间318或图3的行驶初始化时间320,或其组合。又例如,上下文模块626可以确定图3的目的地类别314,用于目的地估计332或与系统用户108提供的所选路线236相对应的声称目的地。
238.又例如,上下文模块626可以存储与候选路线集212或所选路线236相关联的图3的搜索项322。上下文模块626可以使用一个或多个接口,一个或多个接口通信电路或其组合来访问此信息。上下文模块626可以使用一个或多个控制电路来标识上下文参数244。上下文模块626还可以将上下文参数244以及对应的路线、选择或位置存储在一个或多个存储电路中。
239.跟踪模块604可以利用选择模块622或自由驾驶模块624使用迭代过程或机制来实现上下文模块626。跟踪模块604还可以与选择模块622、自由驾驶模块624、搜索模块646或其组合并行地实现上下文模块626。
240.在确定最终用户的移动或行驶之后,控制流可以从跟踪模块604传递到分解模块606、简档模块602、搜索模块646或其组合。控制流可以与上面所描述的在简档模块602、搜索模块646和跟踪模块604之间那样类似地传递,但是使用跟踪模块604的处理结果(诸如上下文参数244、用户历史246或用户历史246内的所选路线236、非默认选择242、先前轨迹326、目的地估计332或其组合,或其组合)来传递。
241.简档模块602还可以使用用户历史246、上下文参数244、其中的一部分、或其组合来对最终用户分组。简档模块602可以根据用户历史246、上下文参数244、其中的一部分或其组合中的相似性或预定联系来对最终用户分组。
242.分解模块606被配置为确定对应于与最终用户相关联的一个或多个路线的图2的路线分解简档220。分解模块606可以确定候选路线集212内的候选路线214、所选路线236、先前轨迹326或其组合的路线分解简档220。分解模块606可以基于分析一个或多个路线来确定路线分解简档220。
243.分解模块606可以针对一个或多个路线来分析操纵、路段、与其相关联的条件或后果,或其组合。例如,分解模块606可以确定对应于所选路线236、候选路线集212中的候选路线214的实例、偏离路线426、先前轨迹326或其组合的图2的操纵集222、图2的路段类别集224、图2的操纵延迟时间228、图2的交通密度230或其组合。
244.分解模块606可以基于标识包括在对应路线中的各路段、边、路径、道路或其组合来确定路段类别集224。分解模块606可以使用地图信息来标识各路段、边、路径、道路或其组合。分解模块606还可以根据地图信息基于与各路段、边、路径、道路或其组合相关联的名称、分类、形状或标记、位置、大小或其组合来确定路段类别集224。
245.分解模块606可以基于多种方式来确定操纵集222。例如,分解模块606可以基于被指定为向系统用户108指示或通知遵循对应路线的导航引导信息来确定操纵集222。分解模块606可以搜索引导信息以获取预定关键字,诸如“右”、“左”、“车道”、“转弯”、“并道”、“退出”或其组合。分解模块606可以基于匹配引导信息内的关键字来确定操纵集222。
246.又例如,分解模块606可以基于标识出的路段、边、路径、道路或其组合以及对应的节点来确定操纵集222。分解模块606可以搜索或标识沿着对应路线的路段、边、路径、道路或其组合的实例之间的连接或过渡。
247.继续该示例,分解模块606还可以确定连接路段之间的“来自”和“到往”关系、系统用户108的行驶方向、或其组合。分解模块606可以将“来自”和“到往”信息、行驶方向、根据地图信息的路段的相对朝向、或其组合与预定的模板信息集进行比较,以用于标识各种可能的操纵。分解模块606可以基于将各种信息与预定集进行匹配来确定操纵集222。
248.在另一个示例中,分解模块606可以使用来自跟踪模块604的信息,该信息包含来自搜索模块646的信息。搜索结果集412可以包含第一搜索结果414、偏离416、偏离路线426、或其组合。分解模块606可以使用该信息来确定构成行驶路线436、偏离路线426或其组合的操纵。
249.分解模块606可以基于类似方法确定操纵延迟时间228、交通密度230或其组合。例如,分解模块606可以使用政府实体或其他服务提供商提供的先前历史记录或趋势。又例如,分解模块606还可以利用众包信息(crowd-sourced information),包括先前生成的或实时的信息。
250.分解模块606可以使用第一控制电路512、第二控制电路534或其组合来确定对应于一个或多个路线的路线分解简档220。分解模块606可将路线分解简档220、其中的一部分、其他中间结果或其组合存储在第一存储电路514、第二存储电路546或其组合中。
251.分析模块608被配置为将偏好估计过程初始化以用于确定对应最终用户的偏好。分析模块608可以初始化对应于系统用户108、另外的参与者110中的一个或多个、或其组合的用户偏好简档248。
252.分析模块608可以基于生成图3的初始简档344、基于整理或组织数据、或其组合来初始化用户偏好简档248。分析模块608可以包括初始化模块628、数据分组模块630、或其组合。
253.初始化模块628被配置为生成对应于系统用户108、另外的参与者110中的一个或多个、或其组合的初始简档344。例如,初始化模块628可以基于用户分组208来生成表示系统用户108的初始简档344,该用户分组208包括相关分组210,相关分组210用于表示对应于
或类似于系统用户108的另外的参与者110。
254.初始化模块628可以基于另外的参与者110中类似于系统用户108的一个或多个参与者的用户偏好简档248来生成表示系统用户108的初始简档344。初始化模块628可以根据包括系统用户108的相关分组210来标识这些相似性。
255.例如,初始化模块628可以根据图2的用户描述206的匹配的实例来将初始简档344生成为另外的参与者110中属于相关分组210的一个或多个参与者的用户偏好简档248。又例如,初始化模块628可以将初始简档344生成为相关分组210内的平均值或最常出现的值。
256.初始化模块628可以基于对应于多种信息的相关分组210来生成初始简档344。例如,初始化模块628可以基于对应于在相同区域内生活或工作、行驶通过相同邻域、相同或重叠的人口统计信息或其组合的相关分组210来生成初始简档344。
257.又例如,初始化模块628可以基于对应于上下文参数244中的相似性、用户历史246或其中的所选路线236中的相似性、或其组合的相关分组210来生成初始简档344。又例如,初始化模块628可以基于对应于社交关系(诸如家庭、朋友、同事或其组合)的相关分组210来生成初始简档344。
258.初始化模块628还可以基于来自系统用户108的输入来生成初始简档344。例如,初始化模块628可以基于对系统用户108的查询、与系统用户108的交互、对系统用户108的调查、或其组合来生成初始简档344。初始化模块628可以将初始简档344生成为对应的最终用户提供的偏好或信息。
259.初始化模块628可以使用第一控制电路512、第二控制电路534或其组合来生成初始简档344。初始化模块628可以在第一存储电路514、第二存储电路546或其组合中存储初始简档344、其中的一部分、其他中间结果,或其组合。
260.数据分组模块630被配置为对数据进行组织,以用于进一步生成和更新用户偏好简档248。数据分组模块630可以对对应于最终用户的路线信息进行分组或组织。数据分组模块630可以分组或组织所选路线236的实例、先前轨迹326的实例、或其组合。例如,数据分组模块630可以生成偏好分析集632、控制集634、或其组合。
261.偏好分析集632是由最终用户选择或穿越的路线或与其相关联的数据的分组,其中路线对应于非默认选择242。偏好分析集632可以包括被确定为非默认选择242的所选路线236、与其相关联的上下文参数244、候选路线集212或其组合的实例。控制集634是由最终用户选择或穿越的路线或与其相关联的数据的分组,其中路线对应于默认选择,诸如最快路线240、最短路线238、基于偏好的路线234或其组合。
262.数据分组模块630可以基于改变数据存储位置、放置公共标签或记号、生成地图或数据存储位置的列表、或其组合来生成偏好分析集632、控制集634或其组合,用于对数据分组。例如,数据分组模块630可以基于非默认选择242生成偏好分析集632。数据分组模块630可以基于改变数据存储位置、放置公共标签或记号、生成地图或数据存储位置的列表或其组合来生成偏好分析集632,用于将非默认选择242、与其相关联的上下文参数244、候选路线集212、或其组合的实例分组在一起。
263.又例如,数据分组模块630可以基于改变数据存储位置、放置公共标签或记号、生成地图或数据存储位置的列表或其组合来类似地生成控制集634,用于将默认选择、与其相关联的上下文参数244、候选路线集212、或其组合的实例分组在一起。数据分组模块630可
以基于来自用户历史246的包括最短路线238、最快路线240或其组合的所选路线236来生成控制集634。又例如,数据分组模块630可以在分别生成控制集634或偏好分析集632之后,将偏好分析集632或控制集634生成为路线或相关联的上下文参数的剩余实例。
264.数据分组模块630还可以基于最近的(recent)时间窗口636对路线或上下文参数进行分组。最近的时间窗口636可以包括与处理的时间或时刻相关联的持续时间或时间。最近的时间窗口636可以包括该处理的时间或时刻之前的持续时间或时间。最近的时间窗口636可以用于表示和分析对应的最终用户的最近行为或趋势。
265.数据分组模块630可以根据最近的时间窗口636来对路线(诸如默认路线或非默认或非高效路线)、与其相关联的上下文参数244、或其组合进行分组。分析模块608可以对在最近的时间窗口636内所生成或穿越的路线或与其相关联的数据进行分组。
266.数据分组模块630可以使用第一控制电路512、第二控制电路534或其组合来组织数据,以用于生成和更新用户偏好简档248,包括生成偏好分析集632、生成控制集634,确定最近的时间窗口636或与之相关联的数据,或其组合。数据分组模块630还可以将包括偏好分析集632、控制集634、最近的时间窗口636或与之相关联的数据或其组合的组织或分组存储在第一存储电路514、第二存储电路546或其组合中。
267.在初始化偏好估计过程之后,控制流可以从分析模块608传递到偏好模块610。控制流可以与上面在简档模块602和跟踪模块604之间所描述的那样类似地传递,但是使用分析模块608的处理结果(诸如偏好分析集632、控制集634、最近的时间窗口636、初始简档344或其组合)。
268.偏好模块610被配置为生成或更新最终用户关于导航或路线选择的偏好。偏好模块610可以生成或更新用户偏好简档248以表示最终用户的偏好。偏好模块610可以生成或更新用户偏好简档248以表示系统用户108对导航信息的偏好。
269.偏好模块610可以基于偏好分析集632、控制集634或其组合来生成或更新用户偏好简档248。偏好模块610可以基于默认选择、非默认选择242、与其相关联的上下文参数244、初始简档344或其组合来生成或更新用户偏好简档248。
270.偏好模块610可以基于更新初始简档344来生成或更新用户偏好简档248。偏好模块610可以基于改变初始简档344中的与图3的操纵偏好346、图3的路段偏好348、图3的优化偏好354、图3的品牌偏好356或其组合相关联的值或量值(magnitude)来更新初始简档344。偏好模块610可以利用非默认选择242或相关联的上下文参数244来标识系统用户108的偏好。
271.偏好模块610可以基于计算对应于上下文参数244的一个值或一组值的操纵偏好346、路段偏好348、评级偏好352、优化偏好354、品牌偏好356的重要性、其具体值或其组合,来生成或更新用户偏好简档248。偏好模块610可以使用统计计算(诸如总、平均或均值、或频率)来计算重要性。偏好模块610还可以基于计算所选路线236或其中的组成部分与上下文参数244之间的相关性来计算重要性。
272.例如,偏好模块610可以为搜索结果、候选路线214或其组合的每个实例计算轻松性等级、可访问性参数、成本(诸如到达时间估计216或候选者距离218)、或其组合。偏好模块610可以利用对应于候选路线214的每个实例或对应于每个搜索结果的路线的路线分解简档220。偏好模块610可以根据候选路线集212计算对应于所选路线236的因素更新分数
638。
273.因素更新分数638是表示指示对应最终用户的导航或路线选择偏好的值或参数。因素更新分数638可以基于所选路线236的特征或特性的强度。因素更新分数638还可以基于初始简档344或用户偏好简档248的先前存在的实例和所选路线236之间的差异。
274.偏好模块610可以计算特定于或对应于用户偏好简档248内的一个或多个字段或参数的因素更新分数638。例如,偏好模块610可以计算特定于或对应于操纵偏好346、路段偏好348、评级偏好352、优化偏好354、品牌偏好356或其组合的因素更新分数638。
275.偏好模块610可以基于将所计算的轻松性、可访问性、成本或其组合或所选路线236的路线分解简档220与候选路线集212内候选路线214的剩余实例相比较来计算因素更新分数638。因素更新分数638还可以基于将所计算的轻松性、可访问性、成本或其组合或所选路线236的路线分解简档220与初始简档344或用户偏好简档248的先前存在的实例相比较来计算因素更新分数638。
276.偏好模块610可以将因素更新分数638计算为正值,用于表示所选路线236的一个或多个字段或参数与初始简档344或用户偏好简档248的先前存在的实例之间的相似性或重叠。偏好模块610可以将因素更新分数638计算为负值或负评级640,用于表示所选路线236的一个或多个字段或参数与初始简档344或用户偏好简档248的先前存在的实例之间的差异。
277.偏好模块610可以基于所选路线236和初始简档344或用户偏好简档248的先前存在的实例之间的重叠或相似性的量(诸如重叠或相似的参数或字段的数量)来计算因素更新分数638的量值或值。偏好模块610还可以基于所选路线236与初始简档344或用户偏好简档248的先前存在的实例之间的差异量(诸如相同参数或字段的值的差异的分离程度或量,或具有不同值的字段或参数的数量)来计算因素更新分数638的量值或值。
278.偏好模块610还可以基于比较所选路线236的先前实例、候选路线集212的相关联实例、与其相关联的上下文参数、或其组合来计算因素更新分数638的量值或值。偏好模块610还可以基于所选路线236与候选路线集212相比的唯一性的度量、其历史记录或趋势、或其组合来计算因素更新分数638的量值或值。
279.例如,偏好模块610可以使用由导航系统100预定的方法、过程、机制、方程或其组合(包括模式识别或机器学习机制)来确定所选路线236中与候选路线集212的相关联实例不同的、重复出现的因素。偏好模块610可以类似地确定上下文参数244的与这些重复出现的因素相关联的重复出现的实例。
280.作为更具体的示例,偏好模块610可以使用偏好分析集632内的非默认选择242的实例来确定模式。偏好模块610可以将这些模式与控制集634内的默认选择进行比较。偏好模块610可以将非默认选择242与对应于默认路径的所选路径236的实例(包括最短路径238、最快路径240、基于偏好的路径234或其组合)进行比较。
281.偏好模块610可以生成或更新用户偏好简档248,包括操纵偏好346、路段偏好348、评级偏好352、优化偏好354、品牌偏好356或其组合。偏好模块610可以生成或更新用户偏好简档248,包括如上所述的操纵偏好346、路段偏好348、评级偏好352、优化偏好354、品牌偏好356或其组合。
282.例如,偏好模块610可以基于比较图2的操纵集222来确定操纵偏好346。偏好模块
610可以针对所选路线236的实例与候选路线集212中的关联实例以及上下文参数244的关联实例之间的比较,来计算操纵的统计。
283.继续该示例,针对所选路线236的实例与候选路线集212中的关联实例以及上下文参数244的关联实例之间的比较,偏好模块610还可以确定操纵或操纵序列的集群、分组、模式或其组合。偏好模块610可以基于频繁出现的操纵实例或系列、操纵的集群或离群(outlying)实例、频繁出现的上下文参数244或其集群、或其组合来确定操纵偏好346。
284.又例如,偏好模块610可以基于比较路段集、路段类别集224、操纵延迟时间228、交通密度230或其组合来确定路段偏好348。偏好模块610可以类似地确定通常行驶或选择的路段、图3的回避区域350、其类别、其序列、与其相关联的上下文参数244、或其组合。
285.又例如,偏好模块610可以基于比较偏好分析集632和控制集634的上下文参数244来确定优化偏好354。偏好模块610可以标识对应于系统用户108的偏好的由上下文参数244表示的场景或者一组条件。偏好模块610可以标识高效路线(诸如最短路线238或最快路线240)的场景或一组条件,用于调整或支持(favoring)一个或多个具体因素的影响,或其组合。
286.又例如,偏好模块610可以基于比较所选路线236或与其对应的目的地、所选搜索结果、目的地估计332、或其组合来类似地确定品牌偏好356。
287.除了所选路线236之外,偏好模块610还可以利用先前轨迹326。偏好模块610还可以计算或生成与先前轨迹326相关联的目的地估计332的候选路线集212。
288.偏好模块610可以处理先前轨迹326来代替所选路线236。例如,偏好模块610可以将先前轨迹326指定为默认选择、最短路径238、最快路径240、非默认选择242(诸如非高效选择)、或其组合。偏好模块610还可以通过与所计算或生成的与先前轨迹326相关联的候选路线集212的实例相比较,来分析先前轨迹326、与其相关联的上下文参数、或其组合。
289.偏好模块610可以如上所述地计算对应于操纵偏好346、路段偏好348、回避区域350、评级偏好352、优化偏好354、品牌偏好356或其组合中的每一个的因素更新分数638、负评级640、或其组合。偏好模块610可以根据由上下文参数244的对应实例表示的常见条件或设置,对因素更新分数638、负评级640或其组合的实例进行分组或组织。
290.偏好模块610可以针对具体情况或场景来生成或更新图3的因素调整集360作为因素更新分数638、负评级640或其组合的实例。偏好模块610可以针对具体情况或场景来生成或更新图3的参数条件362的对应实例,作为对应于因素更新分数638、负评级640或其组合的具体组合的上下文参数244。
291.偏好模块610还可以基于用户历史246计算图3的道路学习率364。偏好模块610可以基于标识所选路线236和到相同位置的先前轨迹326的实例来计算道路学习率364。偏好模块610可以基于对应于与所选路线236的目的地重叠或具有相同的目的地估计332的先前轨迹326出现之前,所选路线236的出现次数、多次出现之间的时间、其他上下文参数或其组合来计算道路学习率364。
292.偏好模块610还可以计算图3的到达时间调整366,用于个性化和更新系统用户108的到达时间估计216。偏好模块610可以基于将所选路线236的到达时间估计216、先前轨迹326或其组合与系统用户108到达对应目的地的实际时间比较,来计算到达时间调整366。偏好模块610可以基于实际到达时间和到达时间估计216之间的差异来计算到达时间调整
366。
293.偏好模块610还可以基于最近的偏离趋势642来生成或更新用户偏好简档248或其中的一部分。最近的偏离趋势642是用户的行驶或移动的模式,或是有影响的因素中的改变。最近的偏离趋势642可以基于最近的时间窗口636。
294.偏好模块610可以根据非默认选择242来计算对应于最近的时间窗口636的最近的偏离趋势642。偏好模块610可以基于在最近的时间窗口636内选择的偏好分析集632中的非默认选择242来计算最近的偏离趋势642。
295.偏好模块610还可以基于在最近的时间窗口636内发生的先前轨迹326来计算最近的偏离趋势642。偏好模块610可以与如上所述的因素更新分数638、因素调整集360、参数条件362或其组合类似地计算最近的偏离趋势642,但使用根据最近的时间窗口636而限制的一组数据。
296.偏好模块610可以将最近的时间窗口636内的数据的结果与总体数据、与用户偏好简档248的先前存在的实例、或其组合进行比较。偏好模块610可以基于最近的偏离趋势642来生成或更新用户偏好简档248。例如,偏好模块610可以基于包括最近的偏离趋势642、用最近的偏离趋势642替换用户偏好简档248内的对应组成部分或因素、影响或计算基于偏好的路线234、或其组合,来生成或更新用户偏好简档248。
297.偏好模块610可以使用第一控制电路512、第二控制电路534或其组合来生成或更新最终用户关于导航或路线选择的偏好。偏好模块610可在第一储存电路514、第二储存电路546或其组合中储存结果,诸如用户偏好简档248、因素更新分数638、最近的偏离趋势642或其组合。
298.在生成或更新最终用户的偏好之后,控制流可以传递到路线模块614、地图评估模块616或其组合。控制流可以与上面描述的在简档模块602、搜索模块646和跟踪模块604之间那样类似地传递,但是使用偏好模块610的处理结果(诸如用户偏好简档248、因素更新分数638、最近的偏离趋势642、或其组合)。
299.路线模块614被配置为计算路线或生成导航信息。路线模块614可以计算候选路线214、行驶路线436、修正路径438、偏离路线426、偏离416或其组合的一个或多个实例。路线模块614可以计算候选路线214,包括所选路线236、高效路线、非高效路线、基于偏好的路线234、或其组合。
300.路线模块614可以使用多种方式计算路线。例如,路线模块614可以基于dijkstra机制、a*机制或d*机制来计算路线。
301.路线模块614还可以生成基于偏好的路线234。路线模块614可以基于用户偏好简档248生成基于偏好的路线234,用于针对系统用户108而个性化基于偏好的路线234。
302.路线模块614可以基于系统用户108的当前条件或情况生成基于偏好的路线234。路线模块614可以访问或标识系统用户108的上下文参数244的当前实例。路线模块614可以访问或标识或确定如上面针对上下文模块626所描述的上下文参数244的当前实例。
303.路线模块614可以将上下文参数244的当前集与参数条件362的实例进行比较。路线模块614可以用与上下文参数244的当前实例相匹配的参数条件362来标识因素调整集360。
304.路线模块614可以使用匹配当前情况或条件的因素调整集360作为权重、限制或边
界、规则、或其组合,以用于计算对应于基于偏好的路线234的候选路线214的实例。路线模块614还可以使用因素调整集360来将候选路线集212内与因素调整集360最接近或匹配的候选路线214的实例标识为基于偏好的路线234。
305.路线模块614可以类似地标记候选路线214的其他实例。路线模块614可以为候选路线214的每个实例计算到达时间估计216、候选距离218或其组合。路线模块614可以标记或标识高效路线或选择,诸如候选路线集212内的最短路线238或最快路线240。
306.路线模块614可以被预定为将最短路线238、最快路线240、基于偏好的路线234、或其组合标识为默认选择。路线模块614可以类似地将高效路线和基于偏好的路线234之外的剩余候选路线标记为非默认选择242。
307.例如,当导航系统100在自由驾驶模式中操作时,路线模块614可以使用来自搜索模块646的信息来确定到搜索请求410的最小距离。路线模块614可以使用偏离416、偏离路线426、或其组合以及来自示例中的搜索模块646、跟踪模块604或其组合的信息来确定图4的偏离路线426。偏离路线426可以相对于候选结果442、行驶路线436、修正路线438、偏离416或其组合来确定。
308.在另一示例中,路线模块614可以使用来自其他模块的信息以及来自图4的改变条件446来对行驶路线436、偏离路径426或其组合做出修改并生成更新路线444。更新路线444可基于多个因素(包括天气的改变条件446,或导航系统100、系统用户108或其组合做出的决定)来确定。
309.例如,驾驶员可能正沿着行驶路线436行驶。天气可能需要道路沿着行驶路径436封闭。此信息可以由简档模块602和跟踪模块604识别。该信息可以传递给分解模块606和分析模块608。最后,更新路线444可以被提供给路线模块614。此更新路线444可能不同于原始行驶路线436。更新路线444可以创建新的行驶路线436。
310.在另一示例中,偏离路线426可以根据改变条件446来修改。结果是到往偏离路线426的更新路线444。偏离416可以被修改为改变条件446的结果。例如,改变条件可以引起对偏离416的改变,这可以导致更新路线444。
311.路线模块614可以使用第一控制电路512、第二控制电路534或其组合来计算路线。路线模块614可以在第一存储电路514、第二存储电路546或其组合中存储路线、标签或指定或上述其他结果。
312.路线模块614可以使用一个或多个用户接口、一个或多个通信电路、或其组合来将路线或搜索结果传送给系统用户108。控制流可以传递到跟踪模块604,来标识或确定与所传送的路线或搜索结果相对应的所选路线236。跟踪模块604可以如上所述使用所选路线236来进一步生成或更新的用户偏好简档248。控制流可以与上面在简档模块602和跟踪模块604之间所描述的那样类似地传递,但是使用偏好模块610的处理结果(诸如路线)。
313.已经发现,基于非默认选择242的用户偏好简档248在识别系统用户108的偏好方面提供了提高的准确性。导航系统100可以通过标识非默认选择242来标识具有来自最终用户的个人偏好的更大影响的用户选择。导航系统100可以在生成用户偏好简档248时利用来自来自非默认选择242的个人偏好的这种更强影响来准确地分析和捕获个人偏好。
314.还已经发现,基于非默认选择242的上下文参数244的用户偏好简档248提供了增加的可用性。导航系统100可以从上下文参数244准确地分析用户的偏好,而无需来自最终
用户的关于他们的偏好的直接通信或更新。此外,导航系统100可以利用上下文参数244来标识最终用户所偏好的多种情况的条件或情境影响、例外、或其组合。消除繁琐的输入,同时准确地捕获多种因素的不同情境重要性,提供了增加的可用性。
315.还已经发现,基于被确定为非默认选择242的先前轨迹326的用户偏好简档248在表示用户偏好方面提供了进一步增加的准确性。导航系统100可以使用先前轨迹326来分析日常驾驶和周围环境,在日常驾驶和周围环境中最终用户知道该区域并且不需要导航辅助。在生成用户偏好简档248时,利用先前的轨迹326增加了数据点的数量并利用了富含偏好影响的驾驶和情境数据的额外数据集,从而导致用于确定用户偏好的准确性的增加。
316.还已经发现,基于用户分组208(该用户分组208基于各种相似性)使用初始简档344而生成的用户偏好简档248在寻找用户偏好方面提供了更快的收敛。导航系统100可以利用跨更大的用户数据集的模式和相似性来做出关于特定用户的假设。与利用空数据集或恒定数据集作为起点相比,这些假设可以提供可能与特定用户相关的初始起点。
317.还已经发现,基于最近的时间窗口636内的最近的偏离趋势642的用户偏好简档248为最终用户或其环境的改变提供更快的适应。导航系统100可以使用最近的时间窗口636来标识更相关的数据集。导航系统100还可以使用最近的偏离趋势642来进一步标识对于最终用户保持一致的最近改变。导航系统100可以使用最近的偏离趋势642来标识最终用户的最新偏好,而不受大数据集的负面影响。
318.地图评估模块616被配置为确定地图校正644。地图校正644是地图数据的准确性的表示。地图校正644可以包括地图中特定数据的错误状态。地图校正644可以包括关于边或路径、节点、实体或其组合的调整或错误标志。
319.地图评估模块616可以基于用于表示系统用户108、另外的参与者110、或其组合的用户偏好简档248来确定地图校正644。地图评估模块616可以基于使用相关分组210(该相关分组210用于表示对应于地图校正644的公共区域)的用户偏好简档248来确定地图校正644。
320.地图评估模块616可以针对错误连接(诸如地图中的一个或多个路径中的错误断开,或路径之间的错误连接)来确定地图校正644。地图评估模块616可以跨多个最终用户基于回避区域350、路段偏好348或其组合来确定地图校正644。地图评估模块616可以根据地理区域(诸如针对“工作”“家”、“学校”的公共或重叠区域,共同穿越的路径,或其组合)跨相关分组210的成员来评估用户偏好简档248中的回避区域350、路段偏好348或其组合。
321.当对应于与目标路径或节点重叠的同一回避区域350的最终用户的数量超过导航系统100预定的阈值时,地图评估模块616可以针对错误的连接来确定地图校正644。当足够数量的最终用户对应于先前轨迹326或与目标路径或节点重叠的路段偏好348的正面示例时,地图评估模块616可以类似地针对错误的断开而确定地图校正644。
322.已经发现,基于用户偏好简档248的地图校正644提供了地图数据的最新的准确性。即使没有来自其他数据提供者的直接的众包报告或更新,来自回避区域350的地图校正644也可以基于用户的日常移动和行为来提供关于地图的数据。
323.本技术中描述的模块可以是第一存储电路514、第二存储电路546、第一控制电路512、第二控制电路534或其组合中的硬件实现方案或硬件加速器,包括无源电路、有源电路、或两者。模块也可以是图1的第一设备102、图1的第二设备106或其组合内但在第一存储
电路514、第二存储电路546、第一控制电路512、第二控制电路534或其组合外的硬件实现方案或硬件加速器,包括无源电路、有源电路、或两者。
324.导航系统100已经以模块功能或顺序作为示例被描述。导航系统100可以对模块进行不同的分区或对模块进行不同的排序。例如,分解模块606可以与跟踪模块604或分析模块608结合,或者被跨跟踪模块604和分析模块608划分。又例如,偏好模块610可以包括专用于处理用户偏好简档248的一个或多个部分的一个或多个子模块。又例如,分析模块608可以被实现为偏好模块610内的子模块。
325.在另一示例中,搜索模块646可以与自由驾驶模块624、简档模块602或其组合对接。图1的系统用户108可以实时驾驶。系统用户108可以沿着预定的行驶路线436(诸如从家到商店)驾驶。系统用户108可能一时冲动去诸如邮局之类的兴趣点418。然而,系统用户108通常去的邮局可能在那期间关闭。
326.继续该示例,系统用户108可以将对兴趣点418的搜索请求410输入到导航系统100中。这里,系统用户108可以输入对邮局的搜索请求410。搜索请求410可以是搜索请求模块646的一部分。搜索请求模块646可以耦合到简档模块602、跟踪模块604或其组合。简档模块602可以向搜索模块646提供关于系统用户108的信息。搜索模块646可以使用此信息来确定搜索结果集412。搜索结果集412可以具有邮局的列表。
327.继续该示例,搜索结果集412可被传递给跟踪模块604。跟踪模块604可以使自由驾驶模块624生效。在此期间,系统用户108可以在他们自己的自由意志下操作车辆。位置信息也可以被包括在搜索结果集412内的信息中。从此信息中,导航系统100可以确定偏离416。例如,对于搜索集412中的每个结果,此情况下的偏离416可以是相对于行驶路线436的偏离448、偏离路线426、或其组合。
328.继续该示例,系统用户108可以从所呈现的结果中选择候选结果442。候选结果442可以在搜索模块646、简档模块602、跟踪模块604或其组合中生成。候选结果可以包括诸如偏离416等相关信息。例如,系统用户可以选择相对于行驶路线436并且距行驶路线436的偏离时间448为5分钟的邮局,或靠近商店的相对于行驶路线436并且距行驶路线436的偏离距离为10公里的邮局。候选结果可以包括基于最小偏离450的选择。候选结果442可以被传送以显示给系统用户108。
329.在另一个示例中,系统用户108可能心血来潮地决定离开行驶路线436以找到兴趣点418。在此示例中,修正路径438模块可以在自由驾驶模块624处于操作中的情况下实时地被确定。修正路径438可以基于相对于行驶路线436、修正路径438或其组合的最小偏离450来确定。
330.出于说明的目的,各种模块已被描述为特定于第一设备102或第二设备106。然而,应当理解,这些模块可以不同地分布。例如,各种模块可以在不同的设备中实现,或者模块的功能可以跨多个设备分步。同样作为示例,各种模块可以存储在非临时性存储介质中。
331.作为更具体的示例,上述一个或多个模块可以存储在非暂时性存储介质中,用于分布到不同的系统、不同的设备、不同的用户或其组合,用于制造或其组合。同样作为更具体的示例,上述模块可以使用单个硬件单元或电路(诸如芯片或处理器)或跨多个硬件单元或电路来实现或存储。
332.本技术中描述的模块可以存储在非暂态计算机可读介质中。第一存储电路514、第
二存储电路546或其组合可以表示非暂时性计算机可读介质。第一存储电路514、第二存储电路546或其组合或其中的一部分可以从第一设备102、第二设备106或其组合中去除。非暂时性计算机可读介质的示例可以是非易失性存储卡或棒、外部硬盘驱动、盒式磁带或光盘。
333.来自用户偏好简档248、基于偏好的路线234、候选路线集212或其组合的物理转换导致物理世界中的移动,诸如在一个或多个设备上为用户传送的信息中的物理改变,或携带第一设备102的系统用户108的物理位移。物理世界中的移动导致对上下文参数244、所选路线236、先前轨迹326或其组合的更新,这可以反馈到导航系统100并进一步影响或更新用户偏好简档248。
334.现在参考图7,其中示出了本发明实施例中导航系统100的操作的方法700的流程图。方法700包括:在框702中接收对兴趣点的搜索请求;在框704中基于用户简档确定行驶路线;在框706中基于相对于行驶路线的最小度量而不是仅基于沿行驶路线的当前位置来生成针对兴趣点的候选结果;在框708中传送候选结果以在设备上并接近行驶路线进行显示。
335.该方法还包括生成搜索结果集;以及其中基于偏离而生成针对兴趣点的候选结果包括基于距行驶路线的最小偏离来选择候选结果。该方法还可以包括检测距行驶路线的偏离路线;基于偏离路线生成修正路径;以及基于相对于修正路径的最小偏离来更新针对兴趣点的候选结果。
336.该方法还可以包括检测距行驶路线的偏离路线;以及基于相对于偏离路线的最小偏离来更新针对兴趣点的候选结果。该方法还可以包括基于沿行驶路线的改变条件而生成更新路线;以及基于相对于更新路线的最小偏离来更新针对兴趣点的候选结果。
337.该方法还可以包括生成搜索结果集;以及其中生成候选结果包括从搜索结果集基于用户简档生成候选结果。该方法还可以包括基于搜索请求生成搜索结果集。
338.所得到的方法、过程、装置、设备、产品和/或系统是易懂的、有成本效益的、简单的、高度通用的、准确的、灵敏的和高效的,并且可以使已知组件适应现成的、高效的以及经济的制造、应用和利用来实现。本发明实施例的另一个重要方面是它有价值地支持和服务了降低成本、简化系统和增加性能的历史趋势。
339.本发明的实施例的这些和其他有价值的方面因此将技术状态进一步提升到至少下一个水平。
340.虽然本发明已经结合具体的最佳模式进行了描述,但是应当理解,根据前面的描述,许多替代、修改和变化对于本领域技术人员将是清楚的。因此,旨在涵盖落入所包括的权利要求范围内的所有这样的替代、修改和变化。本文阐述的或附图中所示的所有事项都应以说明性和非限制性的意义进行解释。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1