检测和校正用户行为中的潜在错误的制作方法

文档序号:14186142阅读:159来源:国知局

一些计算装置(例如,可穿戴装置或者移动电话)可以充当被配置成对即将到来的航班、附近景点、和用户可能感兴趣的其它信息执行搜索查询或者向用户通知即将到来的航班、附近景点、和用户可能感兴趣的其它信息的个人助理。例如,计算装置可以能够访问用户的数字日历,并且计算装置可以向用户警示何时开始从当前位置行进以及时到达未来会议或者事件。或者在另一示例中,计算装置可以能够访问用户的购物历史,并且计算装置可以建议与用户过去购买的产品相配合的某些产品或者服务,而不是与过去所购物品不兼容的其它产品和服务。然而,即使利用一些计算装置提供的所有有用的提醒和访问信息,但提醒和访问信息并不总是阻止个人用户做出导致其日常生活犯错的决定并且采取导致其日常生活犯错的动作。



技术实现要素:

在一个示例中,本公开涉及一种包括以下操作的方法:由计算系统预测计算装置的用户要采取的未来动作;由计算系统基于与计算装置相关联的场境信息来确定用户采取的当前动作;由计算系统基于该当前动作来确定用户是否能够采取未来动作的可能性程度;并且由计算系统基于该可能性程度来预测用户将无法采取未来动作。该方法进一步包括:将指示用户采取的当前动作将导致用户无法采取未来动作的信息从计算系统发送至计算装置。

在另一示例中,本公开涉及一种计算系统,该计算系统包括至少一个处理器;和至少一个模块,该至少一个模块可由至少一个处理器操作以:预测计算装置的用户要采取的未来动作,基于与计算装置相关联的场境信息来确定用户采取的当前动作,以及基于该当前动作来确定用户是否能够采取未来动作的可能性程度。该至少一个模块进一步可由至少一个处理器操作以:基于可能性程度来预测用户将无法采取未来动作,并且将指示用户采取的当前动作将导致用户无法采取未来动作的信息发送至计算装置。

在另一示例中,本公开涉及一种计算机可读存储介质,该计算机可读存储介质包括指令,该指令在被执行时使计算系统的至少一个处理器:预测计算装置的用户要采取的未来动作,基于与计算装置相关联的场境信息来确定用户采取的当前动作,以及基于该当前动作来确定用户是否能够采取未来动作的可能性程度。该指令在被执行时使计算系统的至少一个处理器进一步:基于可能性程度来预测用户将无法采取未来动作,并且将指示用户采取的当前动作将导致用户无法采取未来动作的信息发送至计算装置。

在下面的附图和说明中阐述了一个或者多个示例的细节。本公开的其它特征、目的、和优点将通过说明和附图、以及权利要求书而变得显而易见。

附图说明

图1是图示了根据本公开的一个或者多个方面的用于预测计算装置的用户是否能够采取未来动作的示例系统的概念图。

图2是图示了根据本公开的一个或者多个方面的被配置成预测计算装置的用户是否能够采取未来动作的示例计算系统的框图。

图3是图示了根据本公开的一个或者多个方面的示例计算系统预测计算装置的用户是否能够采取未来动作的示例导航场景的概念图。

图4是图示了根据本公开的一个或者多个方面的由被配置成预测计算装置的用户是否能够采取未来动作的示例计算系统执行的示例操作的流程图。

图5是图示了根据本公开的一个或者多个方面的示例计算系统预测计算装置的用户是否能够采取未来动作的示例时间轴的概念图。

具体实施方式

通常,本公开的技术可以使计算系统能够基于关于计算装置的场境信息来推断计算装置的用户采取的当前动作,并且预测通过采取该当前动作用户是否能够采取未来动作。响应于确定通过采取当前动作用户将无法采取未来动作,计算系统可以发送指示这种情况的计算装置信息。换言之,通过观察从计算装置的场境推断出的用户的动作,计算系统可以确定用户何时未正在做计算系统期望用户去做的事情,并且可以将用于向用户通知其正在做意料之外的事情的信息发送至计算装置。在一些示例中,计算系统可以向计算装置提供指示用户可以采用来增加用户能够采取未来动作的几率的校正动作的信息。在其它示例中,计算系统可以至少向计算装置提供用于将用户正在做意料之外的事情的信息通知给用户,使得用户可以确认其正在潜在地错过某些事情或者犯错。

贯穿本公开,描述了只要计算装置从计算装置的用户接收到分析信息的许可,计算装置和/或计算系统就分析与计算装置和计算装置的用户相关联的信息(例如,场境、位置、速度、搜索查询等)的示例。例如,在下文讨论的情况下,在计算装置或者计算系统可以收集或者可以利用与用户相关联的信息之前,可以向用户提供如下机会:提供输入以控制计算装置和/或计算系统的程序或者特征是否可以收集和利用用户信息(例如,关于用户的当前位置、当前速度等的信息)或者指示装置和/或系统是否和/或如何接收可能与用户有关的内容。另外,在计算装置和/或计算系统存储或者使用特定数据之前,可以按照一个或多个方式来处理该特定数据,从而使得可以去除个人可识别信息。例如,可以处理用户的身份,从而使得无法确定用户的个人可识别信息,或者在可以获得位置信息的情况下可以将用户的的地理位置一般化(诸如,到城市、邮政编码、或者州级别),从而使得无法确定用户的特定位置。由此,用户可以对计算装置和计算系统采集和/或使用关于用户的信息的方式进行控制。

图1是图示了根据本公开的一个或者多个方面的作为用于预测计算装置110的用户是否能够采取未来动作的示例系统的系统100的概念图。系统100包括经由网络130与计算装置100进行通信的信息服务器系统(“ISS”)160。ISS 160可以检测与计算装置100的用户相关联的预期动作(例如,可能的目的地),然后观察用户和计算装置110的行为(例如,使用位置服务),并且当ISS 160认为很可能观察到行为错误时,通过向计算装置110警示来进行干预。ISS 160可以使用用于预测计算装置100的用户的目的地的模型并且通过使用位置追踪服务或者位置历史服务来观察用户的实际行为。ISS 160可以将行为与预期行为进行比较,并且如果ISS 160确定用户当前未采取导致期望行为的动作,则ISS 160可以通知计算装置100向用户警示其可能正在犯可能会阻止用户执行预期动作的错误。

网络130表示用于在计算系统、服务器、和计算装置之间传输数据的任何公共或者专用通信网络,例如,蜂窝、Wi-Fi、和/或其它类型的网络。网络130可以包括一个或者多个网络集线器、网络交换机、网络路由器、或者任何其它可操作地相互耦合从而实现在ISS 160与计算装置110之间的信息交换的网络设备。计算装置110和ISS 160可以使用任何合适的通信技术来在网络130中传输和接收数据。

ISS 160和计算装置110可以每个通过使用相应的网络链路操作地耦合至网络130。将计算装置110和ISS 160耦合至网络130的链路可以是以太网、ATM、或者其它类型的网络连接,并且这种连接可以是无线和/或有线连接。

计算装置110表示单独的移动计算装置或者非移动计算装置。计算装置110的示例包括移动电话、平板计算机、膝上型计算机、桌面型计算机、服务器、大型主机、机顶盒、电视、计算机化的手表、计算机化的眼睛佩戴物、计算机化的手套、或者任何其它类型的便携式计算装置、个人数字助理(PDA)、便携式游戏系统、媒体播放器、电子书阅读器、移动电视平台、自动导航和娱乐系统、或者被配置成经由诸如网络130的网络接收信息的任何其它类型的移动、非移动、可穿戴、和不可穿戴计算装置。

计算装置110包括用户界面装置(UID)112和用户界面(UI)模块120。另外,计算装置110包括查询模块122。模块120至122可以通过使用驻留在相应的计算装置110中和/或在相应的计算装置110处执行的软件、硬件、固件、或者硬件、软件、和固件的混合来执行所描述的操作。计算装置110可以利用多个处理器或者多个装置来执行模块120至122。计算装置110可以作为在底层硬件上执行的虚拟机执行模块120至122。模块120至122可以作为操作系统或者计算平台的一个或多个服务而执行。模块120至122可以作为在计算平台的应用层处的一个或者多个可执行程序而执行。

计算装置110的UID 112可以充当计算装置110的输入和/或输出装置。可以通过使用各种技术来实施UID 112。例如,使用存在敏感输入屏幕,诸如,电阻式触摸屏、表面声波触摸屏、电容式触摸屏、投影电容触摸屏、压力敏感屏幕、声脉冲识别触摸屏、或者另一存在敏感显示技术,UID 112可以充当输入装置。另外,UID 112可以包括麦克风技术、红外传感器技术、或者用于接收用户输入的其它输入装置技术。

使用任何一个或者多个显示装置,诸如,液晶显示器(LCD)、点阵显示器、发光二极管(LED)显示器、有机发光二极管(OLED)显示器、电子墨水、或者能够将可视信息输出至计算装置110的用户的类似的单色或者彩色显示器,UID 112可以充当输出(例如,显示)装置。另外,UID 112可以包括扬声器技术、触觉反馈技术、或者用于将信息输出至用户的其它输出装置技术。

UID 112可以每个包括相应的存在敏感显示器,该存在敏感显示器可以接收来自计算装置110的用户的触觉输入。UID 112可以通过检测来自用户的一个或者多个手势(例如,用户用手指或者触笔触摸或者指向UID 112的一个或者多个位置)来接收触觉输入的指示。UID 112可以向用户呈现输出,例如,在相应的存在敏感显示器处。UID 112可以将输出呈现为图形用户界面(例如,用户界面114),该图形用户界面可以与由计算装置110提供的功能相关联。例如,UID 112可以呈现与由查询模块112提供的搜索功能或者在计算装置110处执行的或者可从计算装置110访问的计算平台、操作系统、应用、和/或服务(例如,电子消息应用、互联网浏览器应用、移动操作系统或者桌面型操作系统等)的其它特征相关的各种用户界面(例如,用户界面114)。

UI模块120可以管理用户与计算装置110的UID 112和其它部件的交互。在计算装置110的用户在UID 112处观看输出和/或提供输入时,UI模块120可以使UID 112输出用户界面诸如用户界面114(或者其它示例用户界面)以便显示。在用户在不同时间与用户界面交互并且当用户和计算装置处于不同位置时,UI模块120和UID 112可以接收来自用户的输入的一个或者多个指示。UI模块120和UID 112可以解释在UID 112处检测到的输入并且可以将关于在UID 112处检测到的输入的信息中继至在计算装置110处执行的一个或者多个相关联的平台、操作系统、应用、和/或服务,例如,以使计算装置110执行功能。

UI模块120可以从在计算装置110和/或一个或者多个远程计算系统诸如ISS 160处执行的一个或者多个相关联的平台、操作系统、应用、和/或服务接收信息和指令。另外,UI模块120可以用作在计算装置110处执行的该一个或者多个相关联的平台、操作系统、应用、和/或服务与计算装置100的各种输出装置(例如,扬声器、LED指示器、音频或者静电式触觉输出装置等)之间的中间件以利用计算装置100产生输出(例如,图形、闪光、声音、触觉响应等)。

在图1的示例中,用户界面114是与由ISS 160提供并且由计算装置100访问的预测服务相关联的图形用户界面。如下文更详细描述的,用户界面114包括图形信息(例如,文本),该图形信息表示ISS 160预测计算装置110的用户可能需要在当前时间执行未来任务或者至少避免通过采取禁止用户执行未来任务的当前动作而犯错的信息。用户界面14可以包括各种其它类型的图形指示,诸如,计算装置110的用户可能需要执行未来任务或者至少避免通过采取禁止用户执行未来任务的当前动作而犯错的预测的信息的视觉描述。UI模块120可以基于UI模块120经由网络130从ISS 160接收的数据来使UID 112输出用户界面114。UI模块120可以接收作为来自ISS 160的输入的用于呈现用户界面114的图形信息(例如,文本数据、图形数据等)以及来自ISS 160的用于在UID 112处在用户界面114内呈现图形信息的指令。

通知模块122执行计算装置110的通知管理相关的功能。通知模块122可以从在计算装置100处执行的应用和服务接收信息数据,以及从ISS 160接收与通知相关的数据,并且作为响应,可以将包含在通知数据中的信息的指示输出至UI模块120以便呈现在UID 112处。通知模块120可以从由ISS 160提供并且由计算装置110访问的预测服务接收通知数据。预测服务可以将通知数据发送至通知模块122,该通知数据包括关于计算装置110的用户可以采取来校正用户的当前动作并且确保用户采取未来动作的校正动作的信息。通知模块120可以将关于校正动作的信息输出至UI模块120以便呈现在UID 112处(例如,作为用户界面114)。

如贯穿本公开所使用的,术语“通知数据”用于描述可以指示与在诸如计算装置110的一个或者多个计算装置处的执行环境内执行的各种平台、应用、和服务相关联的事件的发生的各种类型的信息。例如,通知数据可以包括,但不限于,指定诸如以下的事件的信息:通过与计算装置相关联的消息传送账户接收通信消息(例如,电子邮件、即时消息、SMS等)、通过与计算装置110相关联的社交网络账户接收信息、与计算装置110的日历账户相关联的日历事件(会议、约会等)的提醒、由在计算装置100处执行的第三方应用生成和/或接收的信息、在计算装置100处执行的平台、应用、和/或服务的两个或者更多个部件之间的部件间通信的发送和/或接收等。除了包括关于诸如上述的各种事件的特定事件的信息之外,通知数据可以包括嵌入在通知数据内的指定通知数据的各种特性的各种属性或者参数。例如,通知数据可以包括数据的指定通知数据的来源(例如,生成了通知数据的平台、应用、和/或服务)的一部分(例如,位、元数据、字段等)。

ISS 160表示能够将信息发送至网络(诸如,网络130)并且从网络(诸如,网络130)接收信息的任何合适的远程计算系统,诸如,一个或者多个桌面型计算机、膝上型计算机、大型主机、服务器、云计算系统等。ISS 160托管用于搜索信息的搜索系统和用于针对特定场境预测计算装置110的用户是否能够采取未来动作的预测系统(或者至少提供对这两者的访问)。

计算装置110可以经由网络130与ISS 160通信以访问由ISS 160提供的搜索系统和预测系统。在一些示例中,ISS 160表示通过网络130向经由访问由ISS提供的云来访问搜索和预测服务的一个或者多个计算装置110提供搜索和预测服务的云计算系统。

在图1的示例中,ISS 160包括场境模块162和预测模块164。模块162和164共同提供连接至网络130的计算装置110和其它计算装置可访问用于接收ISS 160预测的用户会感兴趣的有用信息的预测服务。模块162和164可以执行用于构建用户行为的模型以便预测计算装置的用户可能在何时会犯可能潜在地对其生活产生巨大影响的错误(例如,偏离预期行为)的操作。

模块162和164可以通过使用驻留在ISS 160中和/或在ISS 160处执行的软件、硬件、固件、或者硬件、软件、和固件的混合来执行操作。ISS 160可以利用多个处理器或者多个装置来执行模块162和164。ISS 160可以执行模块162和164作为在底层硬件上执行的虚拟机。模块162和164可以作为操作系统或者计算平台的一个或多个服务而执行。模块162和164可以作为在计算平台的应用层处的一个或者多个可执行程序而执行。

如贯穿本公开所使用的,除了计算装置的用户在特定时间采取的一个或者多个可观察到的物理或者虚拟动作之外,术语“场境信息”还用于描述可以由诸如信息服务器系统160和计算装置110的计算系统和/或计算装置用来定义与计算装置和/或计算装置的用户相关联的一个或者多个物理环境特性和/或虚拟环境特性的信息。换言之,场境信息表示能够由计算装置和/或计算系统用来确定形成用户在特定时间针对特定位置正在经历的虚拟和/或物理体验的情况的“用户场境”的任何数据。

场境信息的示例包括过去物理位置、当前物理位置、和未来物理位置、移动程度、与移动相关联的变化幅度、天气状况、交通状况、行进模式、移动模式、应用使用、日历信息、购买历史、互联网浏览历史等。在一些示例中,场境信息可以包括通过诸如计算装置110的计算装置的一个或者多个传感器(例如,陀螺仪、加速度计、接近传感器)获取的传感器信息、从计算装置的一个或者多个通信单元和/或无线电装置(例如,全球定位系统(GPS)、蜂窝、Wi-Fi)获取的无线电传输信息、通过计算装置的一个或者多个输入装置(例如,相机、麦克风、键盘、触摸板、鼠标)获取的信息、以及网络/装置标识符信息(例如,网络名称、装置互联网协议地址)。在一些示例中,场境信息可以包括通信信息,诸如,从电子邮件消息、文本消息、语音邮件消息、或者语音对话导出的信息、日历条目、任务列表、与社交媒体网络相关的信息、以及关于用户或者可以支持确定用户场境的计算装置的任何其它信息。

场境模块162可以处理和分析与计算装置110相关联的信息以定义计算装置110的场境。计算装置110的场境可以指定在各种位置和时间与计算装置110的用户及其物理环境和/或虚拟环境相关联的一个或者多个特性。例如,场境模块162可以基于从特定时间起与计算装置110相关联的场境信息来确定在该特定时间与计算装置110相关联的物理位置作为计算装置110的场境的一部分。当场境信息改变时(例如,基于指示随着时间的变化移动的传感器信息),场境模块162可以在计算装置110的确定的场境中更新物理位置。

为特定位置和/或时间定义计算装置的场境的信息类型不胜枚举。作为一些示例,计算装置的场境可以指定:在各种位置和时间的位置、移动轨迹、方向、速度、机构名称、街道地址、地点类型、建筑物、天气状况、以及交通状况。计算装置的场境可以进一步包括定义与各种位置和时间相关联的会议或者事件的日历信息、在各种位置和时间观看的网页地址、在各种位置和时间观看的网页的数据字段中进行的文本条目(例如,搜索或者浏览历史)、以及与各种位置和时间相关联的其它应用使用数据。计算装置的场境可以进一步包括关于由计算装置在各种位置和时间访问的音频和/或视频流的信息、由计算装置在各种位置和时间访问的电视或者有线/卫星广播、以及关于由计算装置在各种位置和时间访问的其它服务的信息。

场境模块162可以维持与计算装置110的用户相关联的过去场境历史和未来场境历史。场境模块162可以对在过去的各种位置和时间计算装置110的先前场境进行编目和记录,以及从先前记录的场境中可以投影或者推断在各种未来位置和未来时间计算装置的未来场境。场境模块162可以将未来日期和未来时间与先前日期和时间的循环场境相关联,以构建与计算装置110的用户相关联的未来场境历史。

例如,当用户沿着典型路线到工作位置和从工作位置行进至家庭位置时,包含在计算装置110的过去场境历史中的信息可以指示用户在用户的典型工作周期间的位置。基于过去场境历史,场境模块162可以产生包括反映记录在过去场境历史中的真实位置的指示用户在未来工作周期间的预期位置的信息的未来场境历史。

场境模块162可以利用存储在电子日历上的信息或者从与计算装置110相关联的其它通信信息发掘出的信息来补充与计算装置110的用户相关联的未来场境历史。例如,当用户通常在家庭位置时,电子日历可以包括与在未来时间或者日期发生的事件或者约会相关联的位置。并非在事件的未来时间和日期期间包括家庭位置作为未来场境历史中的预期位置,场境模块162可以在事件的未来时间或者日期期间包括事件位置作为预期位置。

场境模块162可以与预测模块164共享过去位置历史,并且预测模块164可以使用过去位置历史来更好地预测、推断、或者确认用户在特定时间采取的当前动作。场境模块162可以通过向预测模块164输出指定计算装置110的当前或者未来场境的数据,对来自ISS 160的预测模块164的对与计算装置110相关联的当前场境和/或与计算装置110相关联的未来场境的请求做出响应。

预测模块164针对不同的场境学习并且预测诸如计算装置110的计算装置的用户的当前和未来动作。预测模块164可以基于从场境模块162接收到的当前场境来预测用户正在针对当前场境做什么,并且可以基于从场境模块162接收到的未来场境来预测用户会针对未来场境做什么。

作为由计算装置110访问的预测服务的一部分,预测模块164可以自动将通知数据或者其它信息输出至计算装置110的通知模块122,以向用户警示用户可以对当前动作采取的校正作为确保采取未来动作的方法。换句话说,预测模块164可以确定用户在当前场境中执行的当前动作是否很有可能或者不太可能导致用户能够在未来场境中执行未来动作。

参照附加示意图更详细地描述了预测模块164。总而言之,预测模块164可以执行一个或多个机器学习技术来学习并建模计算装置100和其它计算装置的用户针对不同的场境通常会采取的动作。通过针对不同的场境学习并建模动作,预测模块164可以生成用于预测计算装置110的用户针对特定场境采取的动作的一个或多个规则。

例如,使用关于与计算装置110的用户以及其它计算装置的用户针对不同的场境采取的动作相关的过去观察的规则生成预测模块164,预测模块164可以猜测或者推断计算装置110的用户正在针对特定场境做什么。作为一个示例,预测模块164可以推断出当计算装置110正在特定日期沿着特定行进路线移动时用户正“开车上班”或者“通勤回家”。作为另一示例,预测模块164可以确定当计算装置110在秋季和冬季在周日下午位于用户的客厅中时用户正在观看特定体育广播。作为再一示例,预测模块164可以预测当计算装置110在深夜或清早的较长时间段内是静止的时用户正在睡觉。并且作为又一示例,预测模块164可以预测当计算装置100在机场线形直立时用户正在移动通过安全检查门。

另外,通过针对不同的场境学习并建模动作,预测模块164可以生成用于预测计算装置110的用户针对当前场境正在采取的当前动作是否会导致计算装置110的用户在未来场境中成功执行未来动作的一个或多个附加规则。该一个或多个附加规则可以输出指示通过执行当前动作,用户是否仍然能够成功地执行未来动作的可能性程度(例如,得分、概率、值等)。预测模块164可以将从一个或多个附加规则输出的可能性程度与一个或者多个阈值进行比较,并且如果可能性程度满足指示用户将无法执行未来动作的阈值,则预测模块164可以输出用于向用户警示其潜在失败或者未来错误的通知数据。

根据本公开的技术,ISS 160可以检测并且尝试校正可能对用户的生活产生巨大影响的用户错误。例如,ISS 160可以推断计算装置110的用户的预期未来目的地,然后,在观察到计算装置110的用户的位置和移动轨迹的指示用户实际上无法到达预期未来目的地的变化,介入并且向用户警示其潜在错误。

考虑计算装置110的用户计划在特定日期的清晨时间从伦敦飞往苏黎世的示例场景。由计算装置110接收到的电子日历或者确认电子邮件可以指示该航班预定在上午7:10起飞。在最糟糕的情况下,用户在起飞日清晨可能不慎将闹钟关闭,结果睡得太迟以致于无法按时到达机场搭乘航班。并非允许用户睡懒觉并且潜在地错过航班,根据本公开的技术,ISS 160可以预测用户在起飞当日睡过了并且自动将通知数据发送至计算装置110以使计算装置110向用户警示并且及时唤醒用户搭乘航班。

在操作中,例如,为了警示计算装置110的用户及时醒来搭乘计算装置110的日历上的航班,ISS 160可以预测计算装置110的用户要采取的未来动作。例如,预测模块164可以周期性地或者偶尔地向场境模块162查询计算装置110的未来场境。响应于来自预测模块164的查询,场境模块162可以基于从计算装置110接收到的场境信息(例如,如上所述的日历信息、通信信息、或者其它场境信息)来确定计算装置110的未来场境并且将该未来场境发送至预测模块164。

基于从场境模块162接收到的未来场境,预测模块164可以通过使用机器学习或者基于其它规则的系统来推断用户给定该未来场境可能会采取的未来动作。例如,响应于接收到指示计算装置110的用户将在凌晨6:00之前位于机场搭乘上午7:10离开的航班的未来场境,预测模块164的机器学习或者基于其它规则的系统可以预测计算装置110的用户将在凌晨5:30出发去机场以驾车30分钟到机场。

ISS 160可以基于与计算装置110相关联的场境信息来确定用户采取的当前动作,并且基于该当前动作来确定用户是否能够采取未来动作的可能性程度。例如,考虑到预测模块164可能期望计算装置110的用户在凌晨5:30之前开始行进至机场,预测模块164可以在凌晨5:00向场境模块162查询关于计算装置110的当前场境的信息以确定用户是否走上正轨开始执行及时行进至机场以搭乘航班的预期动作。由场境模块162确定的当前场境可以指示在用户的家庭位置处缺乏与计算装置相关联的移动,并且可以向预测模块164模拟用户可能正在睡觉的移动模式(或者缺乏移动模式)。

ISS 160可以基于当前动作来确定用户是否能够采取未来动作的可能性程度(例如,概率、得分、二进制值等)。为了促成上述示例,预测模块164可以将当前动作(例如,睡觉)、未来动作(例如,在凌晨5:30出发去机场)、当前场境、和未来场境输入到用于预测计算装置110的用户针对当前场境正在采取的当前动作是否将导致计算装置110的用户在未来场境中成功地执行未来动作的一个或多个规则中。

ISS 160可以基于可能性程度来预测用户将不能够采取未来动作,并且作为响应,将指示用户采取的当前动作将导致用户无法采取未来动作的信息发送至计算装置110。例如,预测模块164可以将从一个或多个附加规则输出的可能性程度与一个或者多个阈值进行比较。如果可能性程度满足阈值(例如,如果用户当前正在睡觉,如果一个或多个规则给出用户按时出发去机场的几率大于50%),则预测模块164可以避免向计算装置110输出通知数据。相反,如果可能性程度不满足阈值(例如,如果用户当前正在睡觉,如果一个或多个规则给出用户按时出发去机场的几率小于50%),则预测模块164可以输出用于向用户警示其潜在失败或者未来错误的通知数据。预测模块164可以学习并且调谐由机器学习和基于规则的系统超时使用的阈值,以提高向用户通知其可能犯错的几率。

在一些示例中,预测模块164可以通过响应于当前时间在未来时间的阈值时间内而降低可能性程度并且响应于确定当前时间不在未来时间的阈值时间内而不降低可能性程度或者增加可能性程度,来确定用户是否能够采取未来动作的可能性程度。例如,预测模块164可以在用户可以离开当前位置以在最迟到达时间之前到达机场的最迟出发时间的半小时的阈值时间量内确定用户正在睡觉。响应于确定用户在半小时阈值内正在睡觉,预测模块164可以降低计算装置110的用户能够执行未来动作并且按时离开的可能性。响应于确定用户在半小时阈值外正在睡觉,预测模块164可以避免降低或者甚至增加计算装置110的用户能够执行未来动作并且按时离开的可能性。

计算装置110响应于确定可能性程度而输出的指示用户将无法执行未来动作的通知数据可以一旦被计算装置110接收到就可以使计算装置110大声响铃或者发出警报声唤醒用户。在一些示例中,计算装置110可以将灯、电视、或者其它形式的通知接通来唤醒用户。在一些示例中,通知数据可以使通知模块122通过UI模块120输出在UID112处的图形用户界面,以便通知用户醒来按时离开。换言之,ISS 160可以将通知数据发送至计算装置110,使得当计算装置110的用户具有清晨航班并且用户未能开始朝向机场移动时,计算装置110按照如下方式主动地向用户警示(例如,通过产生听觉警报):用信号通知用户,直到计算装置110检测到用户已经与计算装置110进行交互为止(例如,作为用户听到、观看到、或者感觉到警报的指示)。

因此,当计算装置的用户从执行本文描述的技术的示例计算系统接收信息时,用户不太可能继续执行可能导致无法执行系统期望用户在未来场境中采取的未来动作的动作。相反,示例系统可以自动推断用户可能犯错,并且向用户通知其潜在失败。

按照这种方式,与仅仅提供提醒和访问信息但仍然可以允许用户进入可能导致其日常生活犯错的方向或者采取可能导致其日常生活犯错的动作的其它计算装置和系统不同,示例系统采取附加步骤来确保错误被避免并且在实际上实现与提醒和信息相关联的未来动作。即使用户不知道其正在犯错,但示例系统仍将自动提供信息以引导用户回避以避免犯错。

因此,用户甚至不需要知道其正在犯错,计算系统可以在没有用户输入的情况下推断出用户是否需要对当前动作采取校正动作。用户可以经受更小的压力,并花费更少的时间沿着错误路径通往未来动作以及花费更少的时间校正过程以避免犯错。通过更早地而不是更晚地校正潜在错误,示例系统可以使计算装置能够从搜索信息以尝试校正或者纠正错误的用户接收更少的输入。利用更少的输入来校正潜在失败,与仅仅向用户提供接收提醒或者搜索信息的能力的其它系统相比,示例系统可以使计算装置能够节省能量并且使用更少的电量。

图2是图示了根据本公开的一个或者多个方面的作为被配置成预测图1的计算装置110的用户是否能够采取未来动作的示例计算系统的信息服务器系统(ISS)260的框图。ISS 260是图1的ISS 160的更详细的示例,并且下面在图1的系统100的场境内对ISS 260进行了描述。图2仅图示了ISS 260的一个特定示例,并且可以在其它实例中使用ISS 260的许多其它示例,并且可以包括在示例ISS 260中包括的部件的子集,或者可以包括在图2中未示出的附加部件。

ISS 260向计算装置110提供导管,诸如计算装置110的计算装置可以通过该导管访问用于接收ISS 260自动预测的、将协助计算装置的用户校正当前动作以便确保用户采取未来动作并且避免犯错的信息的服务。如图2的示例所示,ISS 260包括一个或者多个处理器270、一个或者多个通信单元272、以及一个或者多个存储装置274。ISS 260的存储装置274包括场境模块262和预测模块264。在预测模块264内,存储装置74包括训练模块268。模块262和264每个包括至少与图1的模块162和164相同(若非更多)的能力。

ISS 260的存储装置274进一步包括用户信息数据存储270A、场境历史数据存储270B、以及动作规则数据存储270C(统称为“数据存储270”)。通信信道276可以将部件270、272、和274中的每一个互连以便进行部件间通信(物理地、通信地、和/或可操作地)。在一些示例中,通信信道276可以包括系统总线、网络连接、进程间通信数据结构、或者用于传送数据的任何其它方法。

ISS 260的一个或者多个通信单元272可以通过在一个或者多个网络上发送和/或接收网络信号来与诸如图1的计算装置110的外部计算装置通信。例如,ISS 260可以使用通信单元272在网络130中发送和/或接收无线电信号以与计算装置110交换信息。通信单元272的示例包括网络接口卡(例如,诸如,以太网卡)、光学收发器、射频收发器、GPS接收器、或者可以发送和/或接收信息的任何其它类型的装置。通信单元272的其它示例可以包括短波无线电装置、蜂窝数据无线电装置、无线以太网无线电装置、以及通用串行总线(USB)控制器。

存储装置274可以存储用于在ISS 260的操作期间进行处理的信息(例如,ISS可以存储由模块262、264、和268在ISS 260处执行期间访问的数据)。在一些示例中,存储装置274是暂时性存储器,这意味着存储装置274的主要目的不是长期存储。可以将在ISS 260上的存储装置274被配置成作为易失性存储器来短期存储信息,并且因此,如果该存储装置被断电,则不会保留已存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、和本领域已知的其它形式的易失性存储器。

在一些示例中,存储装置274还包括一个或多个计算机可读存储介质。存储装置274可以被配置成存储比易失性存储器更大量的信息。存储装置274可以进一步被配置成作为非易失性存储器空间来长期存储信息,并且在上电/掉电周期之后保留信息。非易失性存储器的示例包括磁硬盘、光盘、软盘、闪速存储器、或者电可编程存储器(EPROM)或者电可擦除可编程(EEPROM)存储器的形式。存储装置274可以存储与模块262、264、和268相关联的程序指令和/或数据。

一个或者多个处理器270可以在ISS 260内实施功能和/或执行指令。例如,在ISS 260上的处理器270可以接收和执行由执行模块262、264和268的功能的存储装置274存储的指令。由处理器270执行的这些指令可以使ISS 260在程序执行期间将信息存储在存储装置274内。处理器270可以执行模块262、264和268的指令以在给定其它计算装置的其它用户针对相同场境的先前动作的情况下预测计算装置的用户是否能够针对各种场境采取未来动作,并且自动地基于预测向其它计算装置提供信息。即,模块262、264、和268可以由处理器270操作以执行本文描述的ISS 270的各种动作或者功能。

可以搜索存储在数据存储270处的信息和/或可以对存储在数据存储270处的信息进行分类。例如,一个或者多个模块262、264、和268可以提供从数据存储270中的一个或者多个请求信息的输入,并且响应于输入,接收存储在数据存储270处的信息。信息服务器系统260可以向诸如计算装置110的连接至网络130的装置提供访问作为基于云的数据访问服务存储在数据存储270处的信息。当数据存储270包含与单独的用户相关联的信息时或者当在多个用户中使信息通用化时,可以在存储在信息服务器系统260处之前去除所有将信息链接回个人的诸如名称、地址、电话号码、和/或电子邮件地址的个人可识别信息。信息服务系统260可以进一步对存储在数据存储270处的信息进行加密以阻止对存储在其中的任何信息进行访问。另外,如果这些用户肯定地同意这种信息收集,则信息服务器系统260可以仅存储与计算装置的用户相关联的信息。信息服务器系统260可以进一步为用户提供撤销同意的机会,在这种情况下,信息服务器系统260可以停止收集或者保留与该特定用户相关联的信息。

数据存储270A表示用于存储与计算装置(图1的计算装置100)的用户相关的可搜索信息的任何合适的存储介质。用户信息数据存储270A和270C可以由预测模块264维持,其可以是通常由场境模块262维持的场境历史数据存储270B的一部分或者与通常由场境模块262维持的场境历史数据存储270B分开。用户信息数据存储270A可以包括组织与诸如图1的计算装置110的计算装置的单独的用户相关联的不同类型的信息的一个或者多个可搜索数据库或者数据结构。在一些示例中,用户信息数据存储270A包括与用户搜索历史、电子邮件消息、基于文本的消息、语音消息、社交网络信息、照片、应用数据、应用使用信息、购买历史、以及与用户和用户与诸如计算装置110的计算装置的交互相关联的任何所有其它信息相关的信息。存储在数据存储270A处的用户信息可以是可搜索的。例如,场境模块262可以将特定日期和/或当日时间信息作为输入提供到数据存储270A中并且接收与该输入相关的多条用户信息作为输出。例如,场境模块262可以提供特定日期作为输入并且接收关于计算装置110的用户的预订确认电子邮件中指示的航班的信息。或者,作为另一示例,场境模块262可以接收关键字查询(例如,字符串)的指示并且输出与该关键字相关联的约会、购买。

数据存储270B表示用于存储包括由日期和时间组织的场境信息(例如,位置,当日时间、天气信息、交通信息、导航信息、装置状态信息、用户信息等)的可搜索场境历史的任何合适的存储介质。数据存储270B可以包括过去场境历史和/或未来场境历史。信息服务器系统260、具体地场境模块262可以收集与诸如计算装置110的计算装置相关联的场境信息,并且将收集的场境信息存储在数据存储270B处。场境模块262可以依赖存储在场境历史数据存储270B处的信息以确定用户或者诸如计算装置110的计算装置的场境。

数据存储270C可以存储用于预测计算装置的用户针对各种场境可能采取的动作的(例如,机器学习系统的)规则。数据存储270C可以接收场境作为输入并且提供用户在该场境中采取的预测动作作为输出。数据存储270C可以进一步存储用于确定指示通过针对当前场境执行当前动作,计算装置的用户是否能够针对未来场境执行未来“预期”动作的可能性程度的其它规则。数据存储270C可以接收当前动作和未来动作作为输入,并且输出指示若继续执行当前动作,用户是否能够执行未来动作的可能性程度。

任务与需求规则数据存储270C包括一个或多个先前开发的规则,需求预测模块264的依赖于该规则来预测计算装置的用户针对当前场境可能会执行的任务或者动作,以及用户可能需要完成该任务的信息。例如,数据存储270C可以存储需求预测模块264的机器学习或者人工智能系统的规则。需求预测模块264的机器学习或者人工智能系统可以访问数据存储270C的规则以推断针对当前场境与计算装置110的用户相关联的任务和需求。

在一些示例中,预测模块264可以将计算装置的场境作为输入提供给数据存储270C并且接收与计算装置的用户可以在该场境中执行的任务或者动作有关的信息作为输出。在一些示例中,数据存储270C的规则可以输出与针对场境的任务或者动作相关联的可能性程度(例如,计数、概率等)。并且在一些示例中,预测模块264可以向数据存储270C提供当前动作或者任务以及预测或者预期动作或者任务作为输入并且接收与当前动作或者任务是否与未来动作或者任务兼容有关的信息作为输出。

训练模块268可以生成存储在数据存储270C处的动作规则。例如,预测模块264可以初始地接收来自场境模块162的场境并且将场境作为输入提供给训练模块268。训练模块268可以产生用户动作的模型,并且超时训练或者改进模型以更好地学习并且能够预测动作,并且生成用于针对给定场境推断用户的动作的规则。一旦由训练模块268生成,预测模块264可以向场境模块262查询计算装置110的当前或者未来场境的指示。预测模块264可以将从场境模块262接收到的关于计算装置110的当前或者未来场境的信息作为输入提供给模型,并且作为响应,可以接收指示用户通常针对特定场境执行的一个或者多个任务、动作、或者其它物理或者虚拟可观察到的行动的指示(例如,数据)作为输出。

预测模块264的训练模块268可以生成存储在数据存储270C处的用于预测并且确定与用户针对特定场境执行的任务相关联的可能性程度的规则。例如,训练模块268的机器学习或者人工智能系统可以分析由场境模块262获取并且存储在数据存储270B处的场境信息,并且识别与存储在数据存储270A处的用户信息的关联性。由训练模块268使用的机器学习系统的类型包括Bayesian网络、神经网络、以及其它类型的人工智能模型。例如,训练模块268可以开发每行针对每个计算装置110或者共享相似的场境并且在相似的场境处具有正在执行相似动作的用户的计算装置组的表格。基于在场境信息与动作之间的关联性,训练模块268可以开发用于预测计算装置的用户针对特定场境执行的未来动作或者当前动作的规则。

在操作中,ISS 260可以预测计算装置的用户要采取的未来动作,诸如,在未来时间参加事件。例如,预测模块264可以向场境模块262查询关于计算装置100在次日、下一小时、下周等的预测位置或者预期场境的更新。预测模块262可以接收计算装置的用户将在次日(例如,星期日)参加歌剧事件、电影、会议、或者其它约会或者事件的指示作为输出。

ISS 260可以基于与计算装置相关联的场境信息来确定用户采取的当前动作。例如,偶然地,预测模块264可以向场境模块262查询计算装置110的当前场境,并且通过使用存储在动作规则数据存储270C处的规则中的一个或多个规则来确定在当前场境中很可能会执行的当前动作是否与用户在次日执行参加歌剧、电影、会议、或者其它约会的未来动作的能力兼容或者相抵触。预测模块可以将当前场境输入到动作规则数据存储270C中,并且接收计算装置110的用户正在通过行进至或者已经到达本地干洗店并且推断出用户很可能会为次日参加事件将需干洗的衣物放在干洗店清洗来采取准备动作以便为在未来时间参加事件做准备的指示作为输出。

ISS 260可以基于当前动作来确定用户是否能够采取未来动作的可能性程度。例如,预测模块264可以将当前场境、先前确定的未来场境、当前动作、以及预期或者未来动作输出到动作规则数据存储270C中,并且接收关于用户是否应该能够将其在次日参加事件所需干洗的衣物放在干洗店清洗并且仍然能够在次日参加事件的可能性程度的指示。动作规则数据存储270C可以响应于确定准备动作无法在未来时间的阈值时间内完成而降低可能性程度,然后输出该可能性程度。例如,由于干洗店在次日不营业,因此用户将无法取走其为参加事件而进行干洗的衣物,所以动作规则数据存储270C可以输出低可能性程度(例如,小于50%的概率)。

ISS 260可以基于可能性程度来预测用户是否能够采取未来动作,并且将指示用户采取的当前动作将导致用户无法采取未来动作的信息发送至计算装置110。例如,考虑到低可能性程度,预测模块264可以生成通知数据,ISS 260可以将该通知数据发送至计算装置110以向用户警示由于用户所在的干洗店在事件当日不营业,通过为次日参加事件将所需干洗的衣物放在干洗店进行清洗,其可能正在犯可避免的错误。

在一些示例中,ISS 260可以确定用户可以采取来增加用户是否能够采取未来动作的可能性程度的校正动作,并且向计算装置110发送的指示用户采取的当前动作将导致用户无法采取未来动作的信息可以包括对校正动作的指示。例如,预测模块264可以对位于计算装置110的当前位置附近的、在星期天(例如,事件当日)营业的干洗店执行搜索(例如,互联网搜索)并且建议用户替代地行进至这些其它干洗店中的一个。

图3是图示了根据本公开的一个或者多个方面的示例计算系统诸如图1的信息服务器系统160或者图2的信息服务器系统260预测诸如图1的计算装置110的计算装置的用户是否能够采取未来动作的示例导航场景的概念图。下文在图1的系统100的场境内描述了图3,其中,计算装置310是图1的计算装置110的示例。

在图3的示例中,ISS 160的场境模块162可以确定计算装置310在当前时间处于当前位置301处并且确定计算装置310的未来场境在未来时间(例如,在当前时间的三小时后)将计算装置310放置在未来位置303处。图3示出了计算装置310的用户可以开始从位置301行进至303的路径304A、304B、304C、和304D。

路径304A的长度大约为4个距离单元,并且计算装置310的用户从位置301行进至303将花费大约两小时的行进时间。路径304A与位置302A相交。路径304B的长度大约为5个距离单元,并且计算装置310的用户从位置301行进至303将花费大约两个半小时的行进时间。路径304B与位置302B相交。路径304C的长度大约为6个距离单元,并且计算装置310的用户从位置301行进至303将花费大约三小时的行进时间。路径304C与位置302C相交。路径304D也与位置302C相交。然而,路径304D的长度大约为8个距离单元,并且计算装置310的用户从位置301行进至303将花费大约四小时的行进时间。

在一个示例中,在计算装置310沿着路径304A的轨迹朝向位置302A移动时,ISS 160的场境模块162可以检测到与计算装置310相关联的移动,并且将与计算装置310相关联的更新的当前场境发送至预测模块164。预测模块164可以确定通过在当前时间朝向位置302A行进计算装置310的用户是否能够在未来时间之前到达位置303的可能性程度。例如,预测模块164可以确定在从位置301行进至位置302B之后计算装置310的用户到达未来位置303的估计的到达时间。预测模块164可以响应于确定估计的到达时间在未来事件的阈值时间内(例如,在到达位置303的可接受的容差内,以使用户按时到达)而增加可能性程度。例如,预测模块164可以确定采取直达位置302A的路径304A,计算装置310的用户肯定仍将按时到达位置303。

在另一示例中,在计算装置310沿着路径304B的轨迹朝向位置302B移动时,ISS 160的场境模块162可以检测到与计算装置310相关联的移动,并且将与计算装置310相关联的更新的当前场境发送至预测模块164。即使预测模块164可以确定计算装置310在当前时间在远离位置303的轨迹上移动,但预测模块164可以避免向计算装置310警示潜在错误,直至预测模块164确定关于通过在当前时间沿着路径304B朝向位置302B行进用户是否能够在到达时间之前到达位置303的确定度。预测模块164可以响应于确定估计的到达时间在未来时间的阈值时间内(例如,小于)而增加可能性程度。例如,预测模块164可以确定即使通过采取直达位置302B的路径304B,计算装置310的用户肯定仍将按时到达位置303。

在不同示例中,在计算装置310沿着路径304D的轨迹朝向位置302C移动时,ISS 160的场境模块162可以检测到与计算装置310相关联的移动,并且将与计算装置310相关联的更新的当前场境发送至预测模块164。预测模块164可以通过在当前时间朝向位置302C行进来确定计算装置310的用户是否能够在未来时间之前到达位置303的可能性程度。例如,预测模块164可以确定在从位置301行进至位置302C同时在路径304D的轨迹上继续行进之后计算装置310的用户到达未来位置303的估计的到达时间。预测模块164可以响应于确定估计的到达时间不在阈值时间内(例如,在位置303处的可接受到达时间的容差外,以使用户按时到达)而降低可能性程度。例如,预测模块164可以确定采取直达位置302C的路径304D,计算装置310的用户肯定不能按时到达位置303。响应于确定计算装置310的用户很可能不会按时到达,预测模块164可以将信息发送至计算装置310以向用户警示继续沿着路径304D行进的潜在错误。

除了向用户警告其潜在错误之外,预测模块164还可以确定用户可以采取来增加用户能够采取未来动作的可能性程度的校正动作,并且在指示用户采取的当前动作将导致用户无法采取未来动作的信息中包括对校正动作的指示。换言之,并非仅仅使计算装置310输出用于向用户警示继续沿着路径304D行进的错误的听觉警报,而是预测模块164可以发送用于向计算装置310的用户警示通过改变方向并且采取路径304C用户仍然可能能够在未来时间之前到达位置303的信息。

图4是图示了根据本公开的一个或者多个方面的由被配置成预测计算装置的用户是否能够采取未来动作的示例计算系统执行的示例操作410至420的流程图。下文在图1的系统100的场境中描述了图4。例如,根据本公开的一个或者多个方面,ISS 160可以执行操作410至420计算装置110的用户是否能够采取未来动作,并且向计算装置110提供用于向用户警示关于预测用户是否能够采取未来动作的信息。

如图4所示,在操作中,ISS 160可以预测计算装置410的用户要采取的未来动作(410)。例如,ISS 160的场境模块162可以接收与计算装置110相关联的指示计算装置110的用户通常观看排程的节目的场境信息,并且生成定义计算装置110的用户观看该排程的节目的未来广播的未来场境。预测模块162可以接收对未来场境的指示,并且预测用户将在未来时间观看排程的节目。

ISS 160可以基于与计算装置110相关联的场境信息来确定用户采取的当前动作(412)。例如,场境模块162可以经由网络130接收数据,该数据指示计算装置110的用户正在使用计算装置110经由web浏览器或者图形用户界面的一些其它形式导航以租用针对与排程的节目相同的未来时间安排的体育事件的按次付费(PPV)广播,并且生成与计算装置110相关联的定义用户观看图形用户界面的当前场境。预测模块164可以从场境模块162接收对当前场境的指示,并且预测用户正针对未来时间购买或者租用PPV广播。

ISS 160可以基于当前动作来确定用户是否能够采取未来动作的可能性程度(414)。例如,预测模块164可以将观看排程的节目的未来动作和购买PPV广播的当前动作输入到机器学习系统的一个或多个规则中,并且接收关于通过购买PPV节目用户是否更可能或更不可能能够观看其通常观看的排程的节目的可能性程度的指示作为输出。由于PPV节目可以在开始时间内运行或者在结束时间之前开始,所以可能性程度可能很低(例如,10%)。

ISS 160可以确定可能性程度是否满足阈值(416)。预测模块162可以确定可能性程度不够高(例如,大于90%)到足以指示如果用户继续执行当前动作,则用户能够执行未来动作。

ISS 160可以基于可能性程度来预测用户将无法采取未来动作(418)。响应于确定可能性程度不够高(例如,大于90%),预测模块162可以确定用户将无法观看排程的节目。

ISS 160可以将指示用户采取的当前动作将导致用户无法采取未来动作的信息发送至计算装置110(420)。例如,在用户完成PPV节目的购买之前,计算装置110可以从预测模块162接收指示购买PPV节目可能与观看排程的节目的能力相抵触的信息,并且向UID 112输出指示这种情况的警报。

存在预测计算装置110的用户的当前动作是否与该用户的未来动作兼容的ISS 160的若干其它示例。例如,ISS 160可以确定用户正在与计算装置110交互以购买将与另一事件重叠并且阻止参加用户已经购票的另一事件的一个事件的票,并且使计算装置110向用户警告潜在错误。ISS 160可以知道不只是事件开始时间和停止时间以用于确定潜在冲突。例如,预测模块164的规则可以从其它计算装置的其它用户的先前观察中学习到,虽然事件的开始时间处于特定时间,但是事件的预订座位在实际开始时间之前的十五分钟开放,并且如果参加者不能提前十五分钟处于事件,则预订座位对其它的事件参与者开放。因此,即使两个事件的正式开始时间和结束时间不重叠,如果较早事件的结束时间与事件的“非正式”开始时间(例如,预订座位时间)重叠,则ISS 160可以向计算装置110的用户警告订购这两个事件的票券存在潜在冲突。

图5是图示了根据本公开的一个或者多个方面的示例计算系统诸如图1的ISS 160和图2的ISS 260预测诸如图1的计算装置110的计算装置的用户是否能够采取未来动作的示例时间轴500的概念图。在图1至图4的场境中描述了图5。

图5的示例时间轴遵循在时间tS与tF之间发生的以下场景。计算装置110的用户可能正从伦敦市飞往纽约市。如同许多大都会地区一样,伦敦市具有一个以上的国际机场。虽然用户通常从机场B飞出,但是在图5的示例中,用户在时间ts接收关于其订购的从机场A起飞的航班的电子邮件确认。

将时间轴500划分成在时间ts与t1之间的早期规划阶段、在时间t1与t2之间的后期规划阶段、以及在时间t2与tF之间的执行阶段。在早期和后期规划阶段期间,ISS 160可以查看不一定包括针对未来动作的移动信息的场境信息,以预测用户何时可能正在做可以禁止该未来动作的执行的某些事情。

例如,如时间轴500所示,场境模块162可以在时间tF将航班预定从机场A起飞记录在与计算装置110的用户相关联的未来场境历史中。在时间轴500的早期规划阶段期间,计算装置110的用户可以输入对机场B的导航路线指引的搜索查询,稍后,可以开始朝向机场B移动。因为早期规划阶段与执行阶段在时间上不够接近,所以ISS 160可以确定通过搜索机场B或者驾车前往机场B用户可能会犯可能阻止用户在机场A处搭乘飞机的错误的可能性程度较低。ISS 160可以避免输出指示在用户的当前动作与预期动作之间的任何潜在冲突的警报。

在时间轴500的后期规划阶段期间,计算装置110的用户可以输入对机场B的导航路线指引的搜索查询,稍后,可以开始朝向机场B移动。因为后期规划阶段与执行阶段在时间上较为接近,所以ISS 160可以将一些动作视作很可能会妨碍从机场A起飞的未来动作。例如,ISS 160可以接收指示用户正在搜索机场B的导航路线指引的场境信息,这时候,响应于与机场A的预期路线或者目的地相冲突的搜索查询,ISS 160可以确定通过搜索机场B用户可能会犯可能阻止用户在机场A处搭乘飞机的错误的可能性程度较高。当用户在不久的将来的预期位置为机场A时,ISS 160可以输出指示用户搜索机场B的路线指引的当前动作与之存在潜在冲突的警报。

ISS 160可以接收指示用户正在朝向机场B行进的场境信息,这时候,虽然即将到达的目的地机场B与预期路线或者目的地机场A相冲突,但是用户具有充足的时间行进至机场B并且仍然前往机场A,因此ISS 160可以确定通过行进至机场B用户可能会犯可能阻止用户在机场A处搭乘飞机的错误的可能性程度较低。ISS 160可以避免输出指示用户当用户的预期位置为机场A时行进至机场B的当前动作与之存在潜在冲突的警报。

在执行阶段期间,与其它类型的场境信息相比,ISS 160可以更多地依赖计算装置110的移动(或者对其给予更多权重),以推断用户是可能犯可能阻止用户采取预期动作的错误还是可能不犯错误。ISS160可以基于与计算装置110相关联的场境信息来确定计算装置110正沿着朝向机场B的轨迹移动。ISS 160可以将计算装置110的当前轨迹与机场A的位置、机场B的位置、以及其它用户通常弄错机场A和B的其它潜在位置进行比较。响应于确定计算装置110的路径与机场B(例如,机场B是和与未来动作相关联的未来位置类型相同的位置)最接近或者很有可能会与机场B相交,ISS 160可以预测计算装置110的用户正在驾车前往机场B。在期望用户驾车前往机场A搭乘航班时响应于确定计算装置110的用户正在驾车前往机场B,ISS 160可以向计算装置110发送触发计算装置110发出警报声或者输出指示用户正潜在地驾车前往错误机场的一些其它触觉、视觉、或者听觉警报的数据。

虽然所描述的示例将不同的“机场”用作用户可能会错误地搜索或者朝向其导航的示例第一和第二位置,但存在其它示例位置。例如,当期望用户到达第二位置时,用户可以执行搜索第一位置或者导航至第一位置的当前动作,其中,第一位置和第二位置是特定类型运输服务(例如,公交车站、火车站、机场、海上场站等)的不同位置。在其它示例中,第一位置和第二位置可以是单个商业机构的不同的各个办公室(例如,相同的咖啡或者快餐连锁店的两个不同的位置,相似品牌的电影院的两个不同的位置、百货商店等)。在其它示例中,第一和第二位置可以是两个不同的州或者国家的不同的各个城市。在其它示例中,第一和第二位置可以是共享两个不同的城市、州、或者国家的相同街道地址的不同的各个物理位置。

按照这种方式,与仅仅提供提醒和访问信息但仍然可以允许用户进入路线指引或者采取可能导致其日常生活犯错的动作的其它计算装置和系统不同,示例系统采取附加步骤来确保错误被避免并且在实际上实现与提醒和信息相关联的未来动作。即使用户不知道其正在犯错,但示例系统仍将自动提供信息以引导用户返回以避免犯错。

例如,示例系统可以检测用户何时搜索将与人们的日常生活不兼容的东西,并且在计算装置处触发向用户警告潜在的不兼容性的警报。其它示例包括:检测用户何时行进至错误的约会位置(即,前往错误位置)、搜索或者购买会与用户正在或者将要服用的当前药物不兼容的药物、在系统已经推断出用户不应该饮酒时搜索酿酒厂、对先前购物买错的适配器的错误部分进行购买、订购具有不一致的日期或者位置的旅行计划等。

因此,用户甚至不需要知道其正在犯错,计算系统可以在没有用户输入的情况下推断出用户是否需要对当前动作采取校正动作。用户可以经受更小的压力,并花费更少的时间沿着错误路径通往未来动作以及花费更少的时间校正过程以避免犯错。通过更早地而不是更晚地校正潜在错误,示例系统可以使计算装置能够从搜索信息以尝试校正或者纠正错误的用户接收更少的输入。利用更少的输入来校正潜在失败,与仅仅向用户提供接收提醒或者搜索信息的能力的其它系统相比,示例系统可以使计算装置能够节省能量并且使用更少的电量。

条款1:一种方法,包括:由计算系统预测计算装置的用户要采取的未来动作;由计算系统基于与计算装置相关联的场境信息来确定用户采取的当前动作;由计算系统基于该当前动作来确定用户是否能够采取未来动作的可能性程度;并且由计算系统基于该可能性程度来预测用户将无法采取未来动作;以及将指示用户采取的当前动作将导致用户无法采取未来动作的信息从计算系统发送至计算装置。

条款2:根据条款1的方法,进一步包括:由计算系统确定用户可以采取来增加用户是否能够采取未来动作的可能性程度的校正动作,其中,指示用户采取的当前动作将导致用户无法采取未来动作的信息包括对校正动作的指示。

条款3:根据条款1至2中任一项的方法,其中:未来动作包括在未来时间之前到达第一位置;当前动作包括从当前位置行进至与第一位置不同的第二位置;以及确定用户是否能够采取未来动作的可能性程度包括:由计算系统基于场境信息来确定用户在从当前位置行进至第二位置之后到达未来位置的估计的到达时间,以及以下中至少的一个:响应于确定估计的到达时间在未来时间的阈值时间内,由计算系统增加可能性程度;或者响应于确定估计的到达时间不在未来时间的阈值时间内,由计算系统降低可能性程度。

条款4:根据条款1至3中任一项的方法,其中:未来动作包括在未来时间之前到达第一位置;当前动作包括搜索与和第一位置不同的第二位置相关联的信息;以及确定用户是否能够采取未来动作的可能性程度包括:响应于确定第二位置是与第一位置类型相同的位置,由计算系统减低可能性程度。

条款5:根据条款4的方法,其中,第一位置和第二位置是特定类型运输服务的不同位置。

条款6:根据条款4至5中任一项的方法,其中,第一位置和第二位置是单个商业机构的不同的各个办公室。

条款7:根据条款1至6中任一项的方法,其中:未来动作包括在未来时间之前出发去第一位置;当前动作包括在当前时间睡觉;以及确定用户是否能够采取未来动作的可能性程度包括:响应于确定当前时间在未来时间的阈值时间内,由计算系统降低可能性程度。

条款8:根据条款1至7中任一项的方法,其中:未来动作包括:在未来时间参加事件;当前动作包括:执行准备动作以便为在未来时间参加事件做准备;以及确定用户是否能够采取未来动作的可能性程度包括:响应于确定准备动作无法在未来时间的阈值时间内完成,由计算系统降低可能性程度。

条款9:一种计算系统,包括:至少一个处理器;以及至少一个模块,该至少一个模块可由该至少一个处理器操作以:预测计算装置的用户要采取的未来动作;基于与计算装置相关联的场境信息来确定用户采取的当前动作;基于该当前动作来确定用户是否能够采取未来动作的可能性程度;并且基于该可能性程度来预测用户将无法采取未来动作;以及将指示用户采取的当前动作将导致用户无法采取未来动作的信息发送至计算装置。

条款10:根据条款9的计算系统,其中,该至少一个模块可由至少一个处理器进一步操作以:确定用户可以采取来增加用户是否能够采取未来动作的可能性程度的校正动作,其中,指示用户采取的当前动作将导致用户无法采取未来动作的信息包括对校正动作的指示。

条款11:根据条款9至10中任一项的计算系统,其中:未来动作包括在未来时间之前到达第一位置;当前动作包括从当前位置行进至与第一位置不同的第二位置;以及该至少一个模块可由至少一个处理器进一步操作以:至少通过基于场境信息确定在从当前位置行进至第二位置之后用户到达未来位置的估计的到达时间,以及以下中的一个,来确定用户是否能够采取未来动作的可能性程度:响应于确定估计的到达时间在未来时间的阈值时间内而增加可能性程度;或者响应于确定估计的到达时间不在未来时间的阈值时间内而降低可能性程度。

条款12:根据条款9至11中任一项的计算系统,其中:未来动作包括在未来时间之前到达第一位置;当前动作包括搜索与和第一位置不同的第二位置相关联的信息;以及该至少一个模块可由至少一个处理器进一步操作以:至少通过响应于确定第二位置是与第一位置类型相同的位置而降低可能性程度,来确定用户是否能够采取未来动作的可能性程度。

条款13:根据条款9至12中任一项的计算系统,其中:未来动作包括在未来时间之前出发去第一位置;当前动作包括在当前时间睡觉;以及该至少一个模块可由至少一个处理器进一步操作以:至少通过响应于确定当前时间在未来时间的阈值时间内而降低可能性程度,来确定用户是否能够采取未来动作的可能性程度。

条款14:根据条款9至13中任一项的计算系统,其中:未来动作包括在未来时间参加事件;并且当前动作包括执行准备动作以便为在未来时间参加事件做准备;以及该至少一个模块可由至少一个处理器进一步操作以:至少通过响应于确定准备动作无法在未来时间的阈值时间内完成而降低可能性程度,来确定用户是否能够采取未来动作的可能性程度。

条款15:一种计算机可读存储介质,该计算机可读存储介质包括指令,该指令在被执行时使计算系统的至少一个处理器:预测计算装置的用户要采取的未来动作;基于与计算装置相关联的场境信息来确定用户采取的当前动作;基于该当前动作来确定用户是否能够采取未来动作的可能性程度;并且基于该可能性程度来预测用户将无法采取未来动作;以及将指示用户采取的当前动作将导致用户无法采取未来动作的信息发送至计算装置。

条款16:根据条款15的计算机可读存储介质,其中,该指令在被执行时使计算系统的至少一个处理器:确定用户可以采取来增加用户是否能够采取未来动作的可能性程度的校正动作,其中,指示用户采取的当前动作将导致用户无法采取未来动作的信息包括对校正动作的指示。

条款17:根据条款15至16中任一项的计算机可读存储介质,其中:未来动作包括在未来时间之前到达第一位置;当前动作包括从当前位置行进至与第一位置不同的第二位置;以及该指令在被执行时使计算系统的至少一个处理器:至少通过基于场境信息确定用户在从当前位置行进至第二位置之后到达未来位置的估计的到达时间,以及以下中的一个,来确定用户是否能够采取未来动作的可能性程度:响应于确定估计的到达时间在未来时间的阈值时间内而增加可能性程度;或者响应于确定估计的到达时间不在未来时间的阈值时间内而降低可能性程度。

条款18:根据条款15至17中任一项的计算机可读存储介质,其中:未来动作包括在未来时间之前到达第一位置;当前动作包括搜索与和第一位置不同的第二位置相关联的信息;以及该指令在被执行时使计算系统的至少一个处理器至少通过响应于确定第二位置是与第一位置类型相同的位置而降低可能性程度,来确定用户是否能够采取未来动作的可能性程度。

条款19:根据条款15至18中任一项的计算机可读存储介质,其中:未来动作包括在未来时间之前出发去第一位置;当前动作包括在当前时间睡觉;以及该指令在被执行时使计算系统的至少一个处理器至少通过响应于确定当前时间在未来时间的阈值时间内而降低可能性程度,来确定用户是否能够采取未来动作的可能性程度。

条款20:根据条款15至19中任一项的计算机可读存储介质,其中:未来动作包括在未来时间参加事件;并且当前动作包括执行准备动作以便为在未来时间参加事件做准备;以及该指令在被执行时使计算系统的至少一个处理器至少通过响应于确定准备动作无法在未来时间的阈值时间内完成而降低可能性程度,来确定用户是否能够采取未来动作的可能性程度。

条款21:根据条款9的计算系统,包括用于执行条款1至8的任何方法的装置。

条款22:根据条款15的计算机可读存储介质,包括进一步指令,该进一步指令在被执行时使计算系统的至少一个处理器执行条款1至8的任何方法。

在一个或者多个示例中,可以用硬件、软件、固件、或者它们的任何组合来实施所描述的功能。如果用软件来实施,则可以将功能作为一个或者多个指令或者代码存储在计算机可读介质上或者通过计算机可读介质传输,并且功能由基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质,其与诸如数据存储介质的有形介质对应;或者通信介质,该通信介质包括有助于例如根据通信协议将计算机程序从一个位置传输至另一个位置的任何介质。按照这种方式,计算机可读介质通常可以对应于(1)非暂时性的有形计算机可读存储介质或者(2)通信介质诸如信号或者载波。数据存储介质可以是可通过一个或者多个计算机或者一个或者多个处理器进行访问以检索用于实施在本公开中描述的技术的指令、代码和/或数据结构的任何可用介质。计算机程序产品可以包括计算机可读介质。

作为示例而非限制,这种计算机可读存储介质可以包括RAM、ROM、EEPROM、CD-ROM或者其它光盘存储装置、磁盘存储装置、或者其它磁存储装置、闪速存储器、或者可以用于以指令或者数据结构的形式存储期望的程序代码并且可以通过计算机访问的任何其它存储介质。此外,将任何连接适当地称为计算机可读介质。例如,如果通过使用同轴电缆、光纤电缆、双绞线、数字用户线(DSL)、或者诸如红外、无线电、和微波的无线技术来从网站、服务器、或者其它远程源传输指令,那么同轴电缆、光纤电缆、双绞线、DSL、或者诸如红外、无线电、和微波的无线技术被包括在介质的定义中。然而,应该理解,计算机可读存储介质和数据存储介质不包括连接、载波、信号、或者其它瞬态介质,而是涉及非瞬态的有形存储介质。如本文使用的磁盘和光盘包括压缩式光盘(CD)、激光盘、光盘、数字多功能光盘(DVD)、软盘和蓝光盘,其中,磁盘通常磁性地复制数据,而光盘利用激光光学地复制数据。上面的组合还应该被包括在计算机可读介质的范围内。

指令可以通过诸如一个或者多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)、或者其它等效的集成或者离散逻辑电路系统的一个或者多个处理器执行。因此,本文所使用的术语“处理器”可以指任何前述的结构或者适用于实施本文描述的技术的任何其它结构。另外,在一些方面中,可以将本文描述的功能提供在专用的硬件模块和/或软件模块内。同样,可以在一个或者多个电路或者逻辑元件中充分地实施该技术。

本公开的技术可以实施在各种装置或者设备中,包括,无线手机、集成电路(IC)、或者IC集(例如,芯片集)。在本公开中,将各种部件、模块、或者单元描述为用于强化被配置成执行所公开的技术的装置的功能方面,但并不一定需要通过不同的硬件单元实现。相反,如上所述,结合合适的软件和/或固件,可以将各种单元组合在硬件单元中或者可以通过交互操作的硬件单元的类集包括上文描述的一个或者多个处理器来提供。

已经对各种实施例进行了描述。这些和其它实施例在以下权利要求书的范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1