CN108431779A - 基于用户图将动作路由到用户设备 - Google Patents

基于用户图将动作路由到用户设备 Download PDF

Info

Publication number
CN108431779A
CN108431779A CN201780004854.9A CN201780004854A CN108431779A CN 108431779 A CN108431779 A CN 108431779A CN 201780004854 A CN201780004854 A CN 201780004854A CN 108431779 A CN108431779 A CN 108431779A
Authority
CN
China
Prior art keywords
user
action
information
identified
equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201780004854.9A
Other languages
English (en)
Other versions
CN108431779B (zh
Inventor
J·A·布朗
E·富萨罗
G·维尔迪
M·希德哈伦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN108431779A publication Critical patent/CN108431779A/zh
Application granted granted Critical
Publication of CN108431779B publication Critical patent/CN108431779B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • Marketing (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Primary Health Care (AREA)
  • Human Resources & Organizations (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Navigation (AREA)

Abstract

本文中描述了一种用于智能地路由针对与用户相关联的用户设备的集合中的任何一个用户设备的动作的路由系统。在操作中,路由系统从源实体接收要执行动作的请求。路由系统确定执行该动作的模式,该模式涉及对从用户设备集合中选择的一个或多个用户设备的使用。路由系统接着指令所选择的(诸)用户设备执行该动作。在该操作方式中,针对个体用户设备的请求不再必需由该个体用户设备执行。路由系统基于当前上下文信息连同从用户图提取的关系信息来选择(一个或多个)用户设备执行动作。

Description

基于用户图将动作路由到用户设备
背景
在当前实践中,用户在一整天当中与多个用户设备交互,包括传统的台式个人计算设备、平板型计算设备、智能电话、游戏控制台、机顶盒、可穿戴计算设备等等。每个用户设备通常在由以设备为中心的操作系统管控的独立处理环境中操作。每个用户设备被委托来仅处置专门针对它的那些动作。
概述
本文中描述了一种用于智能地路由针对与用户相关联的用户设备的集合中的任何一个用户设备的动作的路由系统。在操作中,路由系统从源实体接收要执行动作的请求。路由系统确定执行该动作的模式,该模式涉及对从用户设备集合中选择的一个或多个用户设备的使用。路由系统接着指令所选择的(诸)用户设备执行该动作。在该操作方式中,针对个体用户设备的请求不再必需由该个体用户设备执行,因为各个个体用户设备的传统首要性(primacy)现在从属于路由系统的管理角色。
由路由系统处理的请求可标识任何计算机实现的动作。例如,由路由系统接收的请求可对应于来自源实体的向用户呈现信息(例如,通知)的指令。或者,该请求可对应于来自用户的向一个或多个其他用户发送信息的指令。或者,该请求可对应于来自用户的执行计算机实现的处理任务(诸如特定资源密集型算法的执行)的指令。抑或是,该请求可对应于来自用户的查找和检索信息的指令。
在一种操作方式中,路由系统基于当前上下文信息连同从用户图提取的关系信息来选择(一个或多个)用户设备执行动作。用户图在因上下文而异的基础上标识用户与至少以下各项之间的关系:其他人;位置;动作相关的信息;时间相关的信息;和设备相关的信息。例如,用户图可在因上下文而异的基础上描述用户的倾向,其指示用户在一个上下文情境中优选使用某特定用户设备,而在另一上下文情境中使用另一用户设备。图形成组件基于由用户提供的显式指令且基于用户在他或她的环境内采取的动作、在因上下文而异(context-by-context)的基础上为用户生成用户图。
以上技术可体现在各种类型的系统、设备、组件、方法、计算机可读存储介质、数据结构、图形用户界面呈现、制品等等中。
提供本概述以便以简化的形式介绍一些概念;这些概念将在以下的详细描述中作进一步描述。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。
附图简述
图1示出了使用路由系统来管理动作的执行的说明性处理环境。
图2示出了可实现图1的处理环境的计算装备。
图3描绘了其中(图1的)路由系统处理源自用户设备集合的请求和/或源自外部源实体的请求的一般场景。
图4描绘了其中源实体作出要向被标识的用户呈现信息的请求的(与图3相比)更具体的场景。
图5描绘了其中该所标识的用户作出要向某个其他用户呈现信息的请求的具体场景。
图6描绘了其中该所标识的用户作出要执行计算机实现的过程的请求的具体场景。
图7描绘了其中该所标识的用户作出要查找信息的请求的具体场景。
图8示出了说明性用户图的高级表示。
图9示出了两个用户图。
图10描绘了其中路由系统利用从用户图提取的特定关系信息来解决特定请求的示例。
图11示出了图1的路由系统的某些特征的一个实现,包括接口组件、结果汇总组件和模式选择组件。
图12示出了作为图1的路由系统的另一组件的图形成组件的一个实现。
图13示出了表示图12的图形成组件的一种操作方式的过程。
图14示出了表示图1的路由系统(例如,当路由系统被应用于处置请求时)的一种实时操作方式的过程。
图15示出了可被用来实现前面的附图中所示出的各特征的任何方面的说明性计算功能性。
贯穿本公开和各附图,相同的附图标记被用来指代相同的组件和特征。100系列附图标记指代最初在图1中找到的特征,200系列附图标记指代最初在图2中找到的特征,300系列附图标记指代最初在图3中找到的特征,依此类推。
详细描述
本公开是按如下方式来组织的。章节A描述了用于管理用户设备集合对动作的执行的路由系统。章节B阐述了解释章节A的路由系统的操作的说明性方法。并且,章节C描述了可被用来实现章节A和B中所描述的诸特征的任何方面的说明性计算功能性。
作为初步事宜,一些附图在也被称为功能性、模块、特征、元件等的一个或多个结构组件的上下文中描述了诸概念。在一个实现中,附图中所示的各种组件可通过运行在计算机装备上的软件、或硬件(例如,芯片实现的逻辑功能性)等或其任何组合来实现。在一种情形中,附图中所例示的将各种组件分离成有区别的单元可反映对应的有区别的物理及有形组件在实际实现中的使用。替代地或附加地,附图中所例示的任何单个组件均可由多个实际物理组件来实现。替代地或附加地,对附图中任何两个或更多个分开的组件的描绘可反映单个实际物理组件所执行的不同功能。章节C提供了关于附图中所示的功能的一个说明性物理实现的附加细节。
其他附图以流程图形式描述了诸概念。以此形式,某些操作被描述为构成按某一顺序执行的有区别的框。此类实现是说明性的而非限制性的。本文中所描述的某些框可被分组在一起并在单个操作中被执行,某些框可被分解成多个组件框,并且某些框可按与本文中所例示的不同的顺序来被执行(包括以并行方式执行这些框)。在一个实现中,流程图中所示的各个框可由运行在计算机装备上的软件或者硬件(例如,芯片实现的逻辑功能性)等或其任何组合来实现。
至于术语,短语“被配置成”涵盖了用于执行被标识的操作的各种物理及有形机制。这些机制可被配置成使用例如运行在计算机装备上的软件、硬件(例如,芯片实现的逻辑功能性)等或其任何组合来执行操作。
术语“逻辑”涵盖用于执行任务的各种物理及有形机制。例如,流程图中所例示的每个操作均对应于用于执行该操作的逻辑组件。操作可使用例如运行在计算机装备上的软件、硬件(例如,芯片实现的逻辑功能性)等或其任何组合来被执行。当由计算装备实现时,逻辑组件表示作为计算系统的物理部分的、以无论何种方式被实现的电子组件。
本文中所描述的任何存储资源或存储资源的任何组合都可被视作计算机可读介质。在许多情形中,计算机可读介质表示某种形式的物理及有形实体。术语计算机可读介质还涵盖传播的信号,例如经由物理管道和/或空气或其他无线介质传送或接收的传播的信号等。然而,特定术语“计算机可读存储介质”和“计算机可读存储介质设备”明确地排除了传播的信号本身,同时包括所有其他形式的计算机可读介质。
以下解释可将一个或多个特征标识为“任选的”。该类型的陈述不应被解读为可以被视作任选的特征的穷尽性指示;也就是说,虽然在文本中没有被明确地标识,但是其他特征也可被视作任选。此外,对单个实体的任何描述并不旨在排除对多个这样的实体的使用;类似地,对多个实体的描述并不旨在排除对单个实体的使用。此外,尽管本描述可将某些特征解释为执行所标识的功能或实现所标识的机制的替代方式,但是这些特征也可以以任何组合来被组合在一起。最后,术语“示例性”或“说明性”指的是潜在的许多实现当中的一个实现。
A.说明性系统
A.1.概览
图1示出了使用路由系统104来管理动作的执行的说明性处理环境102。路由系统104处理由多个用户环境106内的用户设备提供的请求。作为响应,路由系统104确定请求要由用户设备处理的方式。
如本文中所使用的,“用户设备”可对应于与用户相关联的、执行处理功能的任何资源。在一些情形中,用户设备可对应于物理计算设备,诸如台式个人计算设备、智能电话、游戏控制台设备、可穿戴计算设备等。但是在其他情形中,用户设备可对应于由一个或多个计算设备提供的功能性,而不是该(一个或多个)计算设备本身。在后一种情形中,用户设备可被认为是虚拟用户设备。例如,虚拟用户设备可对应于与用户相关联的、执行任何功能(如由相对于用户是本地和/或远程的任何(一个或多个)计算设备实现)的服务、应用、账户等。在一些情形中,用户与用户设备“相关联”,因为他或她拥有或至少控制该设备。在另一情形中,用户与用户设备更松散地关联,因为该用户能够与该用户设备交互,但是该用户可能不拥有或不控制该设备。
图1提供了路由系统104的逻辑绘图。路由系统104操作在后台模式和动态请求-驱动模式中。在后台模式中,活动监视组件108从用户环境106中的用户设备接收活动信息。活动信息描述用户在与其各自的用户设备进行交互的过程中所采取的动作。活动信息还描述其中动作被执行的环境相关的上下文。例如,考虑用户Y,他或她在上班途中乘坐公共汽车时与智能电话交互。该事件的活动信息可标识用户Y与之交互的(诸)特定应用、用户与这些应用交互的时间、用户经由这些应用与之交互的(诸)其他用户,等等。活动信息还可描述用户Y执行以上所提到的动作的(诸)位置、用户Y的附近区域中的其他用户的存在,等等。
图形成组件110基于与每个用户相关联的活动信息且基于由该用户提供的显式指令来为该用户生成用户图。每个用户图标识被标识的用户与至少以下各项之间的关系:其他人;位置;动作相关的信息;时间相关的信息;和设备相关的信息。在一个公式中,用户图可将以上关系表示为节点和边(链接)的集合。“中心”节点表示所标识的用户,从而使所标识的用户成为用户图的“枢纽”。其他节点表示用户环境的各方面,诸如位置、人员、活动等。连接任何两个节点的链接表示两个对应的现实世界特征之间的关系。
总体而言,用户图提供了用户与他或她的环境交互的方式的概览。该概览不仅仅是用户的好恶的实证(testament),而是在因上下文而异的基础上对用户的倾向进行编目。例如,该图可揭示用户优选使用某台设备在某个地点和/或在与某些人相伴时执行某一活动,而当处于不同地点和/或在与其他人相伴时优选使用另一台设备来执行相同的活动。(下面的)子章节A.3提供了关于用户图的说明性组成的进一步信息。
图形成组件110在数据存储112中储存其创建的每个用户图。数据存储112可对应于在单个位置处提供的或分布在多个位置上的任何数据存储库。图形成组件110还基于其接收(和/或未接收)的新活动信息和/或由用户提供的显式信息来动态地更新每个用户图。例如,基于新接收到的涉及用户图的活动信息,图形成组件110可添加新节点、删除现有节点、添加新的关系(链接)、删除现有关系、修改现有关系的强度,等等。另外,用户可显式地作出任何以上所指示的修改,例如通过向联系人的“内圈”指定添加某个人或者从联系人的“内圈”指定移除某个人、向收藏位置的集合添加某位置或者从收藏位置的集合移除某位置,等等。
在实时动态操作模式中,接口组件114从源实体接收标识要执行的动作的请求。该请求涉及被标识的用户,诸如用户X。
模式选择组件116接收由接口组件114转发的请求以及当前上下文信息的实例。当前上下文信息描述了其中该请求已被作出的当前场景。响应于该请求,模式选择组件116从用户X的图提取关系信息。模式选择组件116接着确定执行动作的模式。所确定的模式涉及对与用户X相关联的一个或多个用户设备的使用。模式选择组件116基于当前上下文信息连同其从用户X的用户图提取的关系信息来作出其决定。
模式选择组件116接着通知接口组件114模式已被选择。接口组件114进而根据所选择的模式向要执行动作的(诸)用户设备发送指令。该指令请求(诸)用户设备执行该动作。
更一般而言,路由系统104将用户X的用户设备视为其可从中提取以执行动作的从属资源。在该操作方式中,针对个体用户设备的请求不再必需由该个体用户设备执行,因为各个个体用户设备的传统首要性现在从属于路由系统104的管理角色。换言之,路由系统104可被视为管理由各个个体用户设备提供的处理资源的更高阶操作系统。
由路由系统104处理的请求可对应于任何计算机实现的动作。例如,由路由系统104接收的请求可对应于来自源实体的向用户X呈现信息的指令。或者,该请求可对应于来自该用户的向其他用户的群组(包括至少一个成员)发送信息的指令。或者,该请求可对应于来自用户X的执行计算机实现的处理任务(诸如资源密集型算法的执行)的指令。抑或是,该请求可对应于来自用户X的查找和检索信息的指令。(下面的)子章节A.2提供了关于这些说明性场景中的每一个的附加细节。
结果汇总组件118在一些场景中发挥作用,而在其他场景中不发挥作用。考虑其中用户使用他或她的用户设备之一来作出要查找和检索某些信息的请求的情形。路由系统104可向所有该用户的设备或该用户的设备的基于上下文的群组发送指令,其指令这些设备执行各自的本地搜索。结果汇总组件118接收由各个用户设备生成的部分结果。结果汇总组件118汇总这些部分结果以产生最终结果。接口组件114可接着使用由模式选择组件116选择的呈现模式来将最终结果转发给请求方用户。
(下面的)子章节A.4提供了关于图1所示的路由系统104的每个组件的附加信息。
图2示出了可相对于用户X实现图1的路由系统104的计算装备202。在第一实现中,远程计算装备204被用来实现路由系统104的整体。此处,“远程”意指远程计算装备204在相对于同用户X相关联的每个用户设备的位置的远程位置(或多个远程位置)中被提供。远程计算装备204可使用远程路由系统功能性206(例如,其可对应于实现以上所描述的功能的代码)来实现路由系统104。在物理实现方面,远程计算装备204可对应于在单个位置处提供的或者跨多个位置分布的一个或多个服务器计算设备等。
在第二实现中,本地计算装备208被用来实现路由系统104的整体。例如,与用户X相关联的每个用户设备(对应于本地计算装备208的实例)可使用本地路由系统功能性210来实现路由系统104的整个实例。就数据存储112而言,本地计算装备208可至少储存与用户X相关联的用户图。与其他用户相关联的其他本地计算装备(未示出)可储存与这些其他用户相关联的用户图。在物理实现方面,本地计算装备208可对应于以下各项中的任一者:固定台式个人计算设备、膝上型计算设备、机顶盒、游戏控制台设备、平板型计算设备、智能电话、媒体消费设备、可穿戴计算设备等,或其任何组合。
说得更具体一些,在本地实现中,假定与用户X相关联的第一用户设备接收要执行动作的请求。该用户设备实现路由系统104的完整实例。假定路由系统104的实例确定第二用户设备(也与用户X相关联)最有资格来处置该动作。第一用户设备的路由系统104因此向第二用户设备发送指令,以请求其处置该动作。
在第三实现中,远程计算装备204和本地计算装备208的组合被用来实现路由系统104。例如,远程计算装备204可处置资源密集型任务,诸如由图形成组件110执行的图管理任务。远程计算装备204还可提供储存用户图的数据存储112。对应于本地计算装备208的实例的每个用户设备可处置路由系统104的其他方面,诸如对各个个体请求的实时处理。在处理请求的过程中,本地计算装备208可以与远程计算装备204交互以访问用户图。
一个或多个计算机网络212将本地计算装备208耦合到远程计算装备204。(诸)计算机网络212可对应于广域网(例如,互联网)、局域网等,或其组合。
A.2.说明性模式选择场景
图3描绘了其中路由系统104处理源自用户设备集合302的请求和/或源自外部源实体的请求的一般场景。用户设备集合302包括至少用户设备(304、306、308、310、……、312)。用户设备中的一些可对应于物理用户设备,诸如游戏控制台、台式个人计算设备、智能电话、媒体消费设备(例如,电子阅读器(E-reader)设备)等。其他用户设备可对应于虚拟用户设备,诸如云实现的服务等。
在一个场景中,用户设备X2 306生成针对动作的第一请求(请求1)。例如,用户X可以与用户设备X2 306交互以作出要向另一用户发送信息的请求。或者,用户X可以与用户设备X2 306交互以请求执行一些处理任务(诸如文档的打印)。或者,用户X可以与用户设备X2306交互以请求关于特定话题的信息,等等。
在另一场景中,外部源实体生成针对服务的第二请求(请求2)。例如,另一用户Y可以与他或她的用户设备(未示出)交互以向用户X发送消息形式的信息。在另一情形中,外部源实体可对应于发送通知的某个自动化实体,诸如由某个外部计算系统维护的日历排程系统。
路由系统104将与第一请求1相关联的动作分配给用户设备X4 310。该路由系统将与第二请求2相关联的动作分配给虚拟用户设备X3 308。在其他情形中,虽然未在图3中示出,但路由系统104可将任何动作分配给两个或更多个用户设备。这些用户设备可按并行和/或串行方式执行动作。
更一般而言,路由系统104确定要用来执行由请求指定的动作的模式。在图3的示例(以及本描述中的许多其他示例)中,路由系统104主要通过选择要用来处置动作的(诸)用户设备来确定模式。然而,需要注意,“模式”的概念具有更广泛的含义。例如,路由系统104可替代地或附加地定义关于用户设备处置动作的方式的模式。由此,单个物理用户设备可实现用于执行动作的两个或更多个相应模式,并且路由系统104可在这些模式当中进行选择。
例如,路由系统104可确定通信具有相对高的重要性;作为响应,路由系统104选择以享有特权的方式向所选择的(诸)用户设备递送该通信的模式。例如,路由系统104可指令所选择的(诸)用户设备以高亮方式显式具有高重要性的未接电话的通知。在另一情形中,路由系统104可定义一种模式,该模式致使指定时间跨度内(例如,在上一小时内)由同一发送者发送的若干消息被合并成单个通知。路由系统104经由单个通知来提醒用户X发送者所发送的多条消息的存在。
图4描绘了其中源实体402作出要向被标识的用户X呈现信息的请求的(与图3相比)更具体的场景。在该情形中,路由系统104从多个可能的模式404当中选择执行动作的特定模式(模式1)。路由系统104基于与用户X相关联的用户图结合当前上下文信息来选择模式1。所选择的模式1涉及对与用户X相关联的特定用户设备406(例如,个人计算设备)的使用。
模式选择组件116可基于上下文因素的任何组合来选择用户设备406。一个这样的因素涉及用户设备406的能力。另一因素涉及用户相对于用户设备406的位置,或用户相对于用户设备406的预计的将来位置。下面描述了许多其他上下文因素。
图5描绘了另一具体场景,其中所标识的用户X(对应于源实体502)作出要向某个其他用户(例如,用户Y)呈现信息的请求。此处,路由系统104从多个可能的模式504当中选择执行动作的特定模式(模式2)。再次,路由系统104基于与用户X相关联的用户图结合当前上下文信息来选择模式2
在图5的情形中,假定针对用户X的用户图指示用户Y与用户X具有密切关系。路由系统104可在选择模式以向用户Y发送信息时将该知识纳入考虑。附加地或替代地,假定当前上下文信息指示用户Y在请求被生成的时间处相对紧密地邻近用户X(例如,在同一房间中)。路由系统104也可在选择适当的模式时将该知识纳入考虑。例如,路由系统104可选择将导致信息被同时呈现给用户X和用户Y两者的模式,诸如通过将信息经由机顶盒路由到用户X和用户Y两人当前存在的房间中的电视监视器。
如以上所指出的,路由系统104基于与用户X(信息的发送者)相关联的用户图而在图5的场景中作出其模式选择决定。然而,在其他实现中,路由系统104可基于与用户Y(接收者)相关联的用户图或针对用户X和Y两者的用户图来作出其模式选择决定。例如,假定用户X的用户图指示用户X优选使用特定模式2来与用户Y通信。这是支持选择该模式的一个因素。然而,假定用户Y的用户图指示该人优选使用模式1来从用户X接收消息。路由系统104可在选择适当的模式时将这两个因素纳入考虑,诸如通过选择用户X和Y两者都同意的模式。
在其他实现中,图5中所描述的消息的发送和接收可任选地涉及路由系统104的应用的两个阶段。在第一阶段中,路由系统104可咨询用户X的用户图以确定向用户Y发送消息的适当方式,例如通过选择与用户X相关联的特定用户设备。在第二阶段中,路由系统104可咨询用户Y的用户图以确定向用户Y呈现消息的适当方式,例如通过选择与用户Y相关联的特定用户设备。在第一阶段中,路由系统104正代表用户X进行操作。在第二阶段中,路由系统104正代表用户Y进行操作。然而,这些单独的分析在以下意义上是有联系的:用户X的图可包含关于用户X优选如何与用户Y交互的知识,且反之亦然。在又一其他情形中,如上所述,路由系统104可通过基于用户X和用户Y的用户图选择模式来合并其分析。
图6描绘了其中所标识的用户X(对应于源实体602)作出要执行计算机实现的任务的请求的具体场景;该任务例如可能需要将数据从一种格式变换为另一种格式等。假定用户使用特定用户设备(在此称为“原始”用户设备)来作出该请求。路由系统104通过从多个可能的模式604当中选择执行动作的特定模式(模式1)来响应该请求。再次,路由系统104基于与用户X相关联的用户图结合当前上下文信息来选择模式1。模式1涉及对具有足够处理资源来对处理任务进行处置的特定用户设备606的使用。路由系统104可选择用户设备606而舍弃原始用户设备(用户从该原始用户设备发出了请求),因为原始用户设备不具有足够的处理资源来对处理任务进行处置。在其他情形中,路由系统104可选择在原始用户设备上实现任务。
图7描绘了其中所标识的用户X(对应于源实体702)作出要查找和检索信息的请求的具体场景。例如,用户X可能想要查看在一时间跨度上已被接收到的未接电话的列表,或者他或她的用户设备访问的文档的列表。在该情形中,路由系统104从多个可能的模式704当中选择执行动作的特定模式(模式2)。路由系统104基于与用户X相关联的用户图结合当前上下文信息来选择模式2。所选择的模式2涉及对一组用户设备706的使用。更具体而言,所选择的模式2可涉及对用户的所有用户设备或这些设备的某个子集的使用。路由系统104可在选择该组设备时利用上下文信息和关系信息。
每个用户设备包括代理,该代理在其被来自接口组件114的指令调用时执行查询功能。例如,当被调用时,用户设备的代理咨询其本地数据存储以确定对用户X的查询的回答。其将它的搜索结果明确表达为部分结果,并将这些部分结果提供给结果汇总组件118。结果汇总组件118汇总由所有用户设备706提供的部分结果以生成最终结果,并且任选地,在其已接收到的部分结果的多个实例中移除重复信息。最后,接口组件114经由路由系统104所指定的某个模式来将最终结果发送给用户X。
在另一场景中,用户X作出要执行某个资源密集型处理任务的请求,诸如通过对数据集执行MapReduce(映射化简)算法。作为响应,路由系统104将处理任务的不同部分分配给用户设备706。用户设备706对处理任务按并行和/或串行方式进行操作以生成部分结果的多个实例。结果汇总组件118将这些部分结果聚集成最终结果,并且接口组件114经由被标识的模式将该最终结果发送给请求方用户X。
以上所描述的场景是本着解说的精神来阐述的,而并非限制。路由系统104可被应用于指定其他类型的计算机实现的动作的其他类型的请求。
A.3.说明性用户图
图8表示与用户X相关联的用户图的部分802。该用户图可被概念化为提供表示用户X的“中心”节点。该用户图提供与用户X的环境的各种特征相关的卫星节点。任何两个节点之间的链接标识两个对应特征之间的关系。该图还可用分数(权重值)来注释每条链接。分数描述两个连接的节点之间的关系的强度。例如,考虑其中链接将同用户X相关联的节点与同环境的某个特征相关联的节点相连接的情形;该链接的分数可反映环境中的该特征关于特定上下文对用户X而言的相对重要性。
出于解释用户图可传达的信息项的类型(而不一定解释该图本身的特定结构)的目的,图8将特征(及对应节点)分组成高级别类别。人员相关的信息804描述用户X与之具有某种关联的人员。人员相关的信息804还可表征每个所标识的人和用户X之间的关系的性质。例如,人员相关的信息804可针对用户X将某个人标识为妻子、丈夫、孩子、兄弟姊妹、母亲、父亲、朋友、工作同事、某种服务的提供者等。人员相关的信息804还可标识个人与用户X之间的安全/隐私相关的关系,其关系到可以在这两个人之间适当交换的信息的类型。
在一些实现中,人员相关的信息804具体标识用户与之具有特别密切关系(如由某个阈值关系(relatedness)级别所定义)的“内圈”人员806。例如,内圈人员806可包括家庭成员、朋友、一些工作同事等。在一些情形中,图形成组件110可推断用户X和其他人之间的密切关系。在其他情形中,用户X可显式地向内圈人员806的群组添加(及从中移除)人员。
地点相关的信息808描述与用户X相关联的位置。例如,地点相关的信息808可描述用户X频繁访问的位置。
设备相关的信息810描述与用户X相关联的设备。例如,设备相关的信息810可标识与用户X相关联的物理用户设备、与用户X相关联的虚拟用户设备,等等。如以上所提及的,虚拟用户设备涵盖由一个或多个计算设备提供的应用、服务、账户等。设备相关的信息810还可例如通过描述由每个这样的用户设备提供的应用和硬件资源来指定用户X的设备的能力。
数字资产相关的信息812描述由用户X创建或访问的信息。作为示例而非限制,资产相关的信息812可涵盖文本文档、图像项(例如,照片)、视频项、音频项(例如,歌曲)、网页,等等。
动作/事件相关的信息814描述用户X在一时间跨度上已执行了的动作。例如,动作/事件相关的信息可标识由用户X执行的动作的模式,以及用户X已经执行了的个体一次性动作。分数可以与动作相关联以标识用户X有多频繁地参与该动作,例如,对应于将该动作连接到用户X的链接强度。
时间相关的信息816描述用户X的活动和其他事件的定时。例如,时间相关的信息可描述由用户X执行的一次性动作的发生的时间、周期性事件的定时,以及用户X的习惯的时间特性。
以上所描述的类别是本着解说的精神来阐述的,而并非限制。其他实现可包括未在图8中示出的附加类别。替代地或附加地,其他实现可省略图8中示出的一个或多个类别。
需要进一步注意,图8示出了其中环境相关的节点从与用户X相关联的中心节点辐射出来的径向模式。然而,该图可反映连接的网格。例如,同地点相关的信息808相关联的节点可以与同时间相关的信息816相关联的节点相链接;这些链接可提供关于用户X参观所标识的位置的时间的信息。
不同的实现可使用不同的相应数据结构来表示互连节点的网格。仅举出一个实现,图形成组件110可在用户X执行特定动作时创建与该动作相关联的动作节点。例如,假定用户与特定用户设备交互以访问来自特定在线源的特定内容片段。图形成组件110可创建与检索内容片段的动作相关联的节点(假定该节点尚未被创建)。该动作节点可以与标识其中动作发生了的上下文的一个或多个上下文因素相关联,诸如时间的上下文因素、地点的上下文因素、被访问了的内容的上下文因素、从中检索了内容项的源的上下文因素、被用来检索内容项的用户设备的上下文因素、另一个人的存在的上下文因素,等等。图形成组件110可为每个上下文因素创建节点(如果它尚未被创建的话)。图形成组件110还可在每个上下文因素节点与同已被执行了的动作相关联的每个其他节点之间创建链接。任何两个节点之间的链接强度至少部分地取决于与这两个相应节点相关联的两个因素的经验上的共同发生的频率。
图形成组件110还可添加来自设备相关的上下文源的关系。例如,图形成组件110可基于遥测信息和/或参考源(将在下面描述)来确定用户X拥有的每个用户设备的能力。图形成组件110可接着添加从用户图中的每个用户设备节点分叉出来的能力节点。每个这样的能力节点标识相关联的用户设备的能力。
另外,用户X可明确地添加和删除用户图中的关系。例如,假定图形成组件110习得用户在上班途中乘坐公共汽车时经常访问特定网站。用户X可能出于任何原因而希望使该关系无效,例如,因为用户购买汽车而不再乘坐公共汽车去工作。在其他情形中,用户可以与朋友绝交,并因此切断用户图中反映该友谊的链接。用户X还可例如通过显式地指定特定用户设备在一个或多个上下文因素存在时将永远不被使用来创建显式的负关系。
需要注意,按以上方式形成的用户图提供了用户倾向的细微且多维度的快照。例如,用户图可指示用户在某些活动方面与第一组人员具有密切关系,而在其他活动方面则不具有密切关系。
在另一实现中,图形成组件110可使用多维度表来记录用户X的活动。多维度表中的每个条目可标识被执行了的动作,以及与该动作相关联的所有上下文因素。换言之,该条目对应于多维度空间中的一个节点。涉及相同动作但与另一上下文因素集有关的另一条目定义了多维度空间中的另一节点。在给定相同的上下文因素集的情况下,图形成组件110可在用户重复该相同动作时递增表中的计数。该计数可被视作是测量连接多维度空间中的特定节点和用户X的链接的强度的强度值。
重复一下,存在多种在数据结构中表达以上所描述的多维度数据的方式。以上两个示例是以解说的方式被举出的,而不是限制。
图9示出了两个用户图,即与用户X相关联的第一用户图902和与用户Y相关联的第二用户图904。图9充当说明两点的工具。作为第一点,需要注意,图形成组件110可按不同方式维护其用户图的集合。在一种办法中,图形成组件110可维护与各个用户相关联的独立用户图。在这样的办法中,任何用户图中的节点都不参考任何其他用户图中的任何节点。在另一方法中,图形成组件110可维护连接与不同的图相关联的节点的链接。例如,用户X的用户图可具有将他的妻子标识为与用户Y相对应的内圈人员的节点。与用户Y相关联的该节点可具有链接到用户Y的用户图的指针。类似地,用户Y的用户图可具有链接到用户X的用户图的指针。
作为第二点,路由系统104可在不同情况下将两个或更多个用户图组合在一起。例如,假定用户V和用户W已碰面要一起去旅行,但却不知道彼此的通信偏好。路由系统104可检查用户V和用户W的用户图,以确定两个用户都优选使用某种类型的用户设备和某种类型的通信应用。路由系统104可选择该通用用户设备类型和通信应用来处置旅行期间用户V与用户W之间的任何通信。
图10解说了其中模式选择组件116可利用从用户图提取的关系信息的方式。该用户图对应于假想的用户吉尔琼斯(Jill Jones)。由此,与人员吉尔琼斯相关联的节点承担用户图中的信息枢纽的角色。假定管道工弗兰克米勒(Frank Miller)向吉尔琼斯发送电子邮件消息,告诉她他将迟到上午10:00的约会一个小时。响应于该事件,路由系统104接收要将信息呈现给用户吉尔琼斯的请求,以通知她该电子邮件消息,例如作为用户界面呈现的提醒区域中所呈现的提醒和/或音频提醒。路由系统104还接收标识关于该事件的场景的当前上下文信息。该当前上下文信息标识电子邮件消息已被发送给用户吉尔琼斯的时间。该当前上下文信息还指示吉尔琼斯当前和她的丈夫弗雷德(Fred)在家中。最后,该当前上下文信息指示吉尔琼斯的家庭个人计算设备当前在线。
路由系统104挖掘吉尔琼斯的用户图以获得关于可能对电子邮件消息的递送有影响的因素的进一步洞察。路由系统104发现吉尔琼斯通常在工作日的上午8:00-8:45之间锻炼,但当她的丈夫在家时不锻炼。路由系统104进一步确定吉尔琼斯在家时与游戏控制台、两个个人计算设备和智能电话交互。最后,路由系统104(基于由日历排程系统提供的信息)确定吉尔琼斯已安排了上午10:00与管道工弗兰克米勒的约会,或者确定自动化日程安排代理(例如,响应于吉尔琼斯与管道工的交互)已代表吉尔琼斯自动地为她安排了约会。虽然未被示出,但是需要注意图形成组件110也可实时动态地更新用户吉尔琼斯的用户图以反映部分或所有当前上下文信息,诸如她当前在家中紧邻着她的丈夫弗雷德的事实。
基于所有信息,模式选择组件116确定来自管道工的电子邮件消息可能是重要的;该结论主要基于以下事实:用户吉尔琼斯已在这个特定的日子安排了与该管道工的约会。模式选择组件116进一步确定经由用户吉尔琼斯的两台家庭个人计算设备中的称为第一家庭PC(与第二家庭PC相对)的一台家庭个人计算设备来向她递送电子邮件通知是合适的。模式选择组件116得出该结论,原因是用户图指示用户吉尔琼斯当在家中时使用她的个人计算设备,以及上下文信息指示第一家庭PC当前在线的事实。模式选择组件116可放弃向吉尔琼斯的智能电话发送通知。这是因为,尽管吉尔琼斯在一天的这个时间锻炼时经常使用她的智能电话,但当她的丈夫也在家时她并不这么做;在该情形中,她的丈夫实际上在家。
最后,假定管道工发给吉尔琼斯的电子邮件消息包括附件文档。进一步假定特定阅读器应用被需要以呈现附件文档。模式选择组件116出于以下附加原因而决定在用户的第一家庭PC上呈现电子邮件消息:该PC包括阅读器应用,而智能电话和游戏控制台不包括阅读器应用。
在替代场景中,假定第二家庭PC包括所必需的阅读器应用,并且当前也连接到打印机设备,而第一家庭PC具有所必需的阅读器应用但未连接到打印机设备。此处,模式选择组件116可将电子邮件消息引导到第一家庭PC(因为它在线并且包括所必需的阅读器应用)和第二家庭PC(因为尽管它不在线,但它被附连到打印机设备)两者。模式选择组件116基于吉尔琼斯可能想要打印附件的可能性而将电子邮件消息路由到第二家庭PC;这样的可能性进而可根据用户先前的实践来被推导出来,如用户图中所反映的。
在第二示例中,假定用户X和用户Y结婚且有小孩,即用户Z。假定路由系统104接收指示用户X和用户Y正一起参加诸如用餐之类的事件的当前上下文信息。进一步假定用户Z向X和用户Y两个人发送文本消息。模式选择组件116可任选地决定将该文本消息呈现给用户X或用户Y的智能电话,而非呈现给这两个人,因为他们两人当在一起时不必都接收相同的消息。模式选择组件116可基于从针对用户X和用户Y两者的用户图提取的关系信息来得出这个结论。例如,针对用户X和用户Y的用户图将标识这三个用户(用户X、用户Y和用户Z)的家庭关系。针对用户X和/或用户Y的用户图还可在诸如以上所描述的情形的场景下指定涉及文本消息的接收的偏好。
在第三示例中,假定用户X在家时接收到来自以前的大学朋友的电子邮件消息。这些消息涉及朋友们将要一起参加的即将到来的旅行。模式选择组件116可在其确定用户X单独在房间中时选择经由机顶盒将电子邮件消息投影到电视机。但是,模式选择组件116可在其检测到用户X的妻子在场时选择将电子邮件消息发送到用户X的智能电话。该路由规则有助于确保用户X的家庭成员不会接触到不适当的内容,诸如成人朋友之间的密切的、无恶意的玩笑。
在第四示例中,假定用户X正在乘坐公共汽车上班。模式选择组件116可制止经由用户X的智能电话向用户X发送机密税务文档。取而代之地,模式选择组件116将这些文档路由到工作时的用户的个人计算设备。该规则有助于确保文档不会被无意地暴露在公共空间中。
在第六示例中,用户X决定在休假期间向他的所有家庭成员发送消息。模式选择组件116可代表家庭的每个相应成员针对家庭的每个成员执行单独的分析,并且为每个这样的成员选择适当的消息递送模式。
在第七示例中,假定用户X在用户X正在开会时分别从用户Y和用户Z接收两条消息。模式选择组件116可得出结论:来自用户Y的消息是重要的,而来自用户Z的消息不那么重要。作为结果,模式选择组件116可选择需要使用振动信号、经由用户X的智能电话来提醒用户X用户Y的消息的到达的模式。模式选择组件116可选择需要使用不打扰用户X的会议的语音邮件来提醒用户X用户Z的消息的到达的模式。模式选择组件116可使用类似的基于重要性的处理来以不同的相应方式提醒用户X重要的未接来电和不重要的未接来电。
模式选择组件116可基于一项或多项证据而得出结论:来自用户Y的消息是重要的。这样的证据包括但不限于:发送者Y已手动将消息标记为重要的指示;发送者Y是用户X的内圈的成员的指示;该消息来自已知的发送者Y并且在某些方面还是非典型的指示(如当同事在夜间来电时);发送者Y已尝试在规定的最近时间跨度内向用户X发送若干消息的指示;用户X被安排不久与发送者Y会面的指示(如在日历排程系统中的约会中所反映的);该消息涉及重要话题的指示(如当其包含词语“医院”、“事故”、“紧急”时);用户X历史上在会议期间或在以其他方式参与其他活动的同时接受来自发送者Y的来电的指示,等等。
A.4.路由系统
图11示出了全部都在图1的描述中介绍的用户环境106、接口组件114、活动监视组件108、模式选择组件116和结果汇总组件118的一个实现。在用户环境106方面,图11示出了生成针对要被执行的动作的请求的实体1102的示例。图11还示出了执行与该请求相关联的动作的一个或多个用户设备1104的示例。生成请求的实体1102可对应于由用户操作的用户设备。或者,实体1102可对应于某个其他代理,例如对应于与日历排程系统相关联的提醒者代理等。执行动作的(诸)用户设备1104可对应于与用户X相关联的一个或多个物理用户设备和/或一个或多个虚拟用户设备。
图11还一般地指示用户环境106包含提供活动信息和当前上下文信息的各种源1106。活动信息描述用户环境106内的用户在一时间跨度上的行为。活动信息描述沿两个主要维度的行为。首先,活动信息描述由用户环境106内的用户执行的动作。其次,活动信息描述行为的环境上下文,例如,通常对应于其中该行为被执行的“周围的场景”。活动监视组件108接收活动信息。图形成组件110(将在下面参照图12进行描述)基于活动信息来生成(并更新)用户图。
当前上下文信息描述了其中针对动作的请求被作出的当前场景。例如,用于图11中示出的示例的当前上下文信息描述了涉及其中实体1102做出对要执行的动作的请求的事件的场景。模式选择组件116基于当前上下文信息结合从一个或多个用户图提取的关系信息来执行其分析。
源1106包括用户用来与环境106交互的用户设备,以及与其相关联的感测和监视机制。例如,在用户X方面,源1106主要对应于与用户X相关联的所有用户设备,包括物理用户设备和虚拟用户设备。在用户Y方面,源1106对应于与用户Y相关联的所有用户设备,依此类推。
考虑用户X在一时间跨度上与便携式用户设备(诸如智能电话)交互的说明性情形。在该实例中,源1106可包括由用户设备(或某个网络侧代理)提供的报告机制,该报告机制标识由用户X访问的应用和服务、由用户X创建或访问的数字资产(例如,文档),以及这些访问事件发生的时间。源1106还可包括由用户设备提供的一个或多个位置确定机制(诸如全球定位系统机制)。源1106还可包括用户设备可用于确定其相对于其他用户设备和相关联的用户的位置的任何机制,诸如近场通信(NFC)机制、基于信标的邻近度确定机制(例如,蓝牙低能量(BLE)信标等),等等。源1106还可包括由用户设备提供的任何运动感测和定向机制(例如,加速度计、陀螺仪、磁力计等)。源1106还可包括由用户设备提供的任何图像、视频和音频捕捉机制,等等。通过这些说明性和非限制性机制,源1106可提供关于以下的信息:用户X用他的用户设备执行什么任务、用户X何时与他的用户设备交互、用户X与他的用户设备在哪里交互,以及当用户X与他的用户设备交互时谁在他附近,等等。
另外,每个用户设备可提供指示其当前状态和能力的遥测信息。例如,用户设备(及其相关联的应用)可提供标识用户当前是否正在与用户设备(及其相关联的应用)交互的存在信息。用户设备还可报告:它具有对哪些应用、服务和账户的访问权;其通信能力(例如,它是否支持无线功能等);其包括(或不包括)专用硬件(例如,图形处理单元(GPU)等);其当前的存储器负载;其当前的CPU负载;其当前的电池水平;其当前的信号强度,等等。路由系统104可利用这些设备存在和能力因素中的任一个来确定将动作分配给特定用户设备的适当性。
源1106还可涵盖由涉及用户X的一个或多个网络可访问系统提供的信息。例如,源1106可包括提供关于用户X的约会信息的日历排程系统。源1106还可包括由(一个或多个)任何服务(诸如一个或多个社交网站)维护的、与用户X相关联的用户简档信息。用户简档信息可标识用户X的兴趣,如由用户X自己显式地指定的。源1106还可包括由标识用户X所执行的查询、购买和其他在线活动的任何网络可访问系统维护的日志。源1106还可包括由标识在用户X与其他用户之间交换的消息的任何通信机制提供的日志等。
源1106还可对应于能够提供与环境106中正在发生的事情有关的信号的任何其他电子装备,其中该装备不必与用户设备相关联。例如,源1106可涵盖监视环境106的用户不可知(user-agnostic)装备,诸如天气监视装备、交通监视装备、网络性能测量装备、市场监视装备,等等。
为了进一步解说源1106的性质,考虑图10的具体示例。路由系统104可基于由用户(吉尔琼斯)在日历排程系统中创建的约会信息,或者基于由日程安排代理代表用户(例如,基于用户和管道工之间的通信)自动创建的约会来确定用户已安排了与管道工的碰面。路由系统104可基于由用户(吉尔琼斯)的智能电话提供的位置信息来确定用户目前在家。路由系统104可基于由用户(吉尔琼斯)在锻炼时与之交互的网络连接的锻炼监视装备提供的数据来确定用户参与每日锻炼例程。该用户的日历还可指定她每天的日程安排,包括她的每日锻炼例程。路由系统104可以以不同的方式确定用户(吉尔琼斯)紧邻着她的丈夫,例如基于由用户(吉尔琼斯)和她的丈夫携带的用户设备分别提供的位置信息;基于用户设备离公共信标(例如,Wi-Fi信标、BLE信标等)的邻近度;基于由一个或多个用户设备提供的NFC信号信息;基于由一个或多个用户设备提供的环境侦听机制,等等。路由系统104可基于由用户(吉尔琼斯)显式地提供的信息和/或基于可通过遥测从用户设备收集的信息来确定吉尔琼斯的用户设备的资源能力。
在所有情形中,路由系统104维护适当的安全措施,以确保对个人信息的任何使用遵照适用的法律、社会规范和个体用户的偏好。例如,路由系统104只有在被用户准予这么做的明确许可之后才可收集和使用用户的个人信息。
前进到接口组件114,该组件114包括请求接收组件1108,其接收来自实体1102的请求,并接着在之后将该请求转发给模式选择组件116。接口组件114还包括从模式选择组件116接收所选择的模式的指示的指令发送组件1110。所选择的模式确定请求中所指定的动作要如何被执行。响应于接收到所选择的模式,指令发送组件1110向将参与执行该动作的所有用户设备(其在很多情形中将仅对应于单个用户设备)发送指令。该指令指令(诸)用户设备执行该动作。
部分结果接收组件1112在某些场景中操作以从已被指令执行动作的一个或多个用户设备(诸如(一个或多个)用户设备1104)接收部分结果。在查询相关的场景中,特定用户设备可通过执行对其(一个或多个)本地数据存储的搜索并生成反映其搜索结果的部分结果来提供部分结果。
结果汇总组件118汇总由多个用户设备提供的部分结果,以生成最终结果。在这么做的过程中,其可任选地移除重复的信息。结果汇总组件118接着指令指令发送组件1110将最终结果报告给发起了搜索的请求方实体。指令发送组件1110通过使用所选择的递送模式(由模式选择组件116标识)将最终结果报告给请求方实体来执行该任务。
现在参考模式选择组件116,上下文评估组件1114将已经(由源1106)提供了的当前上下文信息转发给图查询组件1116。上下文评估组件1114可任选地对原始上下文信息执行处理以生成涉及上下文的更高级别的结论。例如,上下文评估组件1114可通过比较由两个用户所携带的用户设备分开地生成的位置信息来确定这两个用户是紧邻着彼此定位的。
图查询组件1116基于它在其中被调用的场景来访问一个或多个用户图。例如,假定要被执行的动作涉及向特定用户X呈现通知。作为响应,图查询组件1116可检索与用户X相关联的用户图。在其他场景中,图查询组件1116可提取两个或更多个用户图。图查询组件1116还可(任选地)从任何用户图提取信息的子集,而不是提取该用户图的整体。例如,参考图10的示例,当前上下文信息指示用户当前在家。响应于该发现,图查询组件1116可任选地过滤与该用户相关联的完整用户图以仅提取该图的与用户在家中执行的活动相关的部分。
模式评估组件1118接收由图查询组件1116提取的关系信息,以及由上下文评估组件1114提供的当前上下文信息。模式评估组件1118接着确定要利用其执行动作的模式。该模式标识要被用来执行所请求的动作的(诸)用户设备。另外,该模式可标识其中(诸)用户设备要执行所请求的动作的方式。
模式评估组件1118可使用各种技术和技艺来确定模式。在一种办法中,模式评估组件1118可应用机器学习模型。机器学习模型可接受表征以下的特征值:所请求的动作、关系信息(从(诸)用户图提取)和当前上下文信息。作为响应,机器学习模型可输出映射到特定模式的值。机器学习模型可对应于基于训练示例的语料库来被训练的任何统计模型。作为示例而非限制,机器学习模型可对应于线性回归模型、决策树型模型、贝叶斯网络型模型、深度学习神经网络模型、支持向量机(SVM)模型等。训练示例对应于包括特定动作信息(指定特定动作)、特定关系信息和特定上下文信息的数据集,以及指示执行动作的适当方式的标签。
在另一方法中,模式评估组件1118可应用基于规则的系统,该基于规则的系统应用已由专家开发者手动地指定了的规则。一种规则对应于如果-则(IF-THEN)规则。这样的规则假设特定模式适用于由动作信息、关系信息和当前上下文信息定义的给定的输入条件集。在其他示例中,模式评估组件1118可应用使用两种或更多种不同技术的混合模型,诸如与基于规则的系统组合的统计模型。
仅仅举出一个特定的基于规则的算法,模式评估组件1118可首先标识正由用户或某个外部实体请求的动作。例如,一个这样的动作可对应于要向用户呈现消息的请求,其中该消息已经从特定源发送。模式评估组件1118可咨询用户图以确定用户先前已用来接收消息的用户设备的子集。对于每个这样的用户设备,用户图还描述了与其先前使用相关联的上下文因素,以及将这些因素连接到用户设备的关系的强度。模式评估组件1118可接着基于涉及用户设备的上下文因素的加权和来将分数分配给每个用户设备。也就是,scored1=w1*factor1+w2*factor2,….,+wn*factorn,其中scored1是分配给设备d1的分数,factori反映将用户设备连接到特定上下文因素的链接强度(但是如果该上下文因素没有在当前场景中被展示出,则该链接强度被设置为零),并且wi反映凭经验推导出的权重值。例如,假定用户当前在下午5:00在他的妻子在场的情况下在家。用户图指示该用户在先前场合已用他的智能电话接收到消息。用户图进一步指示该用户频繁地在家中使用他的智能电话,并频繁地在他的妻子在场的情况下使用他的智能电话,但很少在晚餐期间使用他的智能电话。模式评估组件1118基于所有这些发现来生成分数。总体而言,模式评估组件1118挑选具有最有利分数的用户设备。在其他实现中,图中所表达的负关系可排除候选用户设备,如当用户在晚餐期间显式地指示他不希望经由他的智能电话来接收消息时。
在其他情形中,模式评估组件1118可使用图排序算法来对用户图中所标识的用户设备的适用性进行排序,诸如但不限于PageRank算法。
在一些实现中,训练/开发系统(未示出)开发对所有用户都相同的基础统计模型和/或基于规则的系统(但是在操作的运行时阶段,该模型将基于与不同用户相关联的用户图中的差异来为不同用户提供不同的结果)。在其他情形中,训练/开发系统开发为每个用户定制的基础统计模型和/或基于规则的系统。在又一些其他情形中,训练/开发系统开发具有用户不可知部分和用户定制(user-customized)部分的统计模型和/或基于规则的系统。
模式评估组件1118还可包含允许用户在其使用过程中定制其执行的机制,例如通过在统计模型和/或基于规则的系统已被安装之后指定一个或多个定制规则。模式评估组件1118还可包含学习功能性。学习功能性基于来自每个用户的反馈、在因用户而异的基础上自动地更新模式评估组件1118的行为。反馈指示用户是否满意由模式评估组件1118作出的每个决定。在一种情形中,学习功能性可收集反映用户的反馈的新训练样例,并接着基于用户的反馈来周期性地重新训练针对该用户的统计模型。
最后,模式评估组件1118可在某些情形中邀请用户从诸候选模式当中手动地进行选择,如当模式评估组件1118不能够确定一种模式相对于另一种模式的优越性时。由模式评估组件1118提供的学习功能性可基于用户的手动选择来自动地适配其分类行为。
图12示出了图形成组件110的一个实现。图形成组件110的目的是创建和维护多个用户图。图形成组件110包括活动接收组件1202,该活动接收组件1202经由活动监视组件108从源1106(以上参考图11所描述)接收活动信息。活动信息反映用户所采取的动作,以及其中这些动作被执行了的上下文。
更具体而言,源1106可被概念化为形成两个一般类别的源。第一类别的源提供通常瞬态性质的活动信息,例如通过在特定场合描述用户已执行了什么动作以及其中该动作被执行了的直接上下文(例如,通过描述用户何时执行了该动作、用户在哪里执行了该动作、用户同谁一起执行了该动作)。第二类别的源(本文中称为背景源)提供关于用户其自身以及用户在其中操作的物理环境的更缓慢变化的上下文信息。
以上详细描述了第一类别的源。在第二类别的源方面,一个或多个人际关系源1204提供关于人员之间的关系的信息。例如,人际关系源1204可对应于由用户显式地创建的简档信息、社交网络信息、联系人信息,等等。人际关系源1204还可包括涉及组织的分层结构的信息;该信息标识组织中的一个人与组织中的其他人的关系。
人际关系源1204还可包括推理引擎,该推理引擎基于人员彼此交互的方式(例如,基于由活动监视组件108提供的较低级别的活动信息)来确定这些人员之间的关系。例如,当一个人与另一个人之间交换的消息量超过因环境而异的阈值时,推理引擎可得出结论:这两人中的一个人相对于另一个人是内圈关系。在另一情形中,当发送者发送的电子邮件将接收者称为“妈妈”时,推理引擎可得出结论:该电子邮件的接收者是发送者的母亲,等等。附加地或替代地,推理引擎可基于人员准予彼此的许可来标识这些人员之间的密切关系,等等。该推理引擎可以以任何方式来实现,例如等式、算法、机器训练模型、基于规则的系统等或其组合。
一个或多个设备能力源1206提供关于用户设备和其他处理资源的能力的信息。例如,设备能力源1206可包括技术参考源、检测和报告能力的基于遥测的功能性,等等。
图维护组件1210基于馈送给它的以上所描述的输入信息来形成和维护用户图。例如,当输入信息指示用户X已建立新关系时,图维护组件1210可向用户X的用户图添加链接。例如,假定用户X访问新的位置,并且用户X的设备之一报告该事件。图维护组件1210可通过向用户X的用户图添加与该新位置相关联的新节点以及连接枢纽节点(与用户X相关联)与该新位置节点的新链接来记录该事件。图维护组件1210还可添加其他链接和节点来描述用户对该新位置的访问的其他上下文方面。图维护组件1210还可向每条链接分配权重值(分数),该权重值反映由该链接连接的两个特征之间的关联度。权重值初始地将为低;但是图维护组件1210可根据特征共同发生的次数来增加权重值。
图维护组件1210还可包括各种策略,以用于对反映陈旧的用户兴趣的节点和关系不再予以强调。例如,图维护组件1210可使用衰减函数以随时间减小链接的权重值。图维护组件1210可在权重值下降到规定的阈值以下时完全移除节点和链接,这将在用户没有对该关系表现出新生兴趣的情况下发生。
图维护组件1210可应用任何功能性来决定它如何创建和修改用户图,诸如统计模型、基于规则的系统、一个或多个等式或算法等或其任何组合。图维护组件1210还可包括允许用户手动地修改其用户图的任何方面的界面。
B.说明性过程
图13和14以流程图形式示出了解释章节A的路由系统104的操作的过程(1302、1402)。由于在章节A中已经描述了路由系统104的操作之下的原理,所以在本章节中将以概述的方式提出某些操作。如详细描述的前言部分所述,流程图被表示为以特定顺序执行的一系列操作。但是,这些操作的顺序仅仅是代表性的,并且可以以任何方式来被改变。
图13示出了表示图1的图形成组件110的一种操作方式的过程1302。在框1304中,图形成组件110在一时间跨度上从多个用户设备集合接收活动信息,该多个用户设备集合与相应的用户相关联。在框1306中,图形成组件110至少部分地基于活动信息来创建多个用户图。在框1308中,图形成组件110将用户图储存在数据存储112中。每个用户图在因上下文而异的基础上标识被标识的用户与至少以下各项之间的关系:其他人;位置;动作相关的信息;时间相关的信息;和设备相关的信息。
图14示出了由一个或多个计算设备实现的用于处理要执行计算机实现的动作的请求的过程1402。在操作1404中,路由系统104从源实体接收要执行计算机实现的动作的请求。在框1406中,路由系统104接收关于其中请求正被作出的当前上下文的当前上下文信息。在框1408中,路由系统确定执行动作的模式,以提供经确定的模式。该经确定的模式涉及对从与所标识的用户相关联的用户设备的集合选择的一个或多个用户设备的使用。
更具体而言,路由系统104通过访问与所标识的用户相关联的用户图(在数据存储112中被提供)来确定模式。如以上所提到的,用户图标识所标识的用户与至少以下各项之间的因上下文而异的关系:其他人;位置;动作相关的信息;时间相关的信息;和设备相关的信息。用户图中的关系在一时间跨度上至少基于由与所标识的用户相关联的用户设备的集合报告的活动信息而被形成。该确定操作进一步包括至少部分地基于从用户图提取的信息连同当前上下文信息来选择经确定的模式。
最后,在操作1410中,路由系统104向(诸)用户设备发送指令,以指导(诸)用户设备执行该动作。
C.代表性计算功能性
图15示出了可被用来实现在上述附图中阐述的各机制的任何方面的计算功能性1502。例如,图15所示的计算功能性1502的类型可被用来实现图2的本地计算装备208和/或远程计算装备204中的任何一者。在所有情形中,计算功能性1502表示一个或多个物理且有形的处理机制。
计算功能性1502可包括一个或多个硬件处理器设备1504,诸如一个或多个中央处理单元(CPU)和/或一个或多个图形处理单元(GPU),等等。计算功能性1502还可包括用于储存诸如机器可读指令、设置、数据等的任何种类的信息的任何存储资源(也称为计算机可读存储介质或计算机可读存储介质设备)1506。作为示例而非限制,存储资源1506可包括任意(诸)类型的RAM、任意(诸)类型的ROM、闪存设备、硬盘、光盘等中的任何一者。更一般而言,任何存储资源都可使用用于储存信息的任何技术。此外,任何存储资源都可提供信息的易失性或非易失性保持。此外,任何存储资源都可表示计算功能性1502的固定或可移除组件。当(诸)硬件处理器设备1504执行被储存在任何存储资源或存储资源的组合中的计算机可读指令时,计算功能性1502可执行上述功能中的任何功能。计算功能性1502还包括用于与诸如硬盘驱动机构、光盘驱动机构等的任何存储资源进行交互的一个或多个驱动机构1508。
计算功能性1502还包括用于(经由输入设备1512)接收各种输入以及用于(经由输出设备1514)提供各种输出的输入/输出组件1510。说明性输入设备包括键盘设备、鼠标输入设备、触摸屏输入设备、数字化垫、一个或多个视频相机、一个或多个深度相机、自由空间姿势识别机构、一个或多个话筒、语音识别机构、任何移动检测机构(例如,加速度计、陀螺仪等),等等。一种特定输出机构可包括显示设备1516及相关联的图形用户界面呈现(GUI)1518。显示设备1516可对应于电荷耦合显示设备、阴极射线管设备、投影机构等。其他输出设备包括打印机、模型生成机构、触觉输出机构、档案机构(用于储存输出信息),等等。计算功能性1502还可包括用于经由一个或多个通信管道1522与其他设备交换数据的一个或多个网络接口1520。一条或多条通信总线1524将上述组件通信地耦合在一起。
(多条)通信管道1522可以以任何方式(例如,通过局域计算机网络、广域计算机网络(例如,互联网)、点对点连接等或其任何组合)来实现。(诸)通信管道1522可包括由任何协议或协议的组合管控的硬连线的链路、无线链路、路由器、网关功能、名称服务器等的任何组合。
替代地或附加地,前述各章节中所描述的任何功能可至少部分地由一个或多个硬件逻辑组件来执行。作为示例而非限制,计算功能性1502(及其硬件处理器)可使用以下各项中的一者或多者来被实现:现场可编程门阵列(FPGA);专用集成电路(ASIC);应用专用标准产品(ASSP);片上系统的系统(SOC);复杂可编程逻辑器件(CPLD)等。在该情形中,机器可执行指令体现在硬件逻辑本身中。
下面的概述提供了本文中阐述的技术的说明性方面的非穷尽列表。
根据第一方面,描述了一种由一个或多个计算设备实现的用于处理要执行计算机实现的动作的请求的方法。该方法包括:从源实体接收要执行计算机实现的动作的请求;接收关于其中该请求正被作出的当前上下文的当前上下文信息;以及确定执行该动作的模式,以提供经确定的模式,该经确定的模式涉及对从用户设备的集合选择的一个或多个用户设备的使用,所述用户设备进而与所标识的用户相关联。以上所提及的确定操作包括访问与所标识的用户相关联的用户图,该用户图在数据存储中被提供。该用户图在因上下文而异的基础上标识所标识的用户与至少以下各项之间的关系:其他人;位置;动作相关的信息;时间相关的信息;和设备相关的信息。用户图中的关系在一时间跨度上至少基于由与所标识的用户相关联的用户设备的集合报告的活动信息而被形成。该确定操作还包括至少部分地基于从用户图提取的关系信息连同当前上下文信息来选择经确定的模式。该方法接着包括向(诸)用户设备发送指令,以指导(诸)用户设备执行该动作。
根据第二方面,用户设备集合中的至少一个用户设备对应于与用户相关联的物理用户设备。
根据第三方面,用户设备集合中的至少一个用户设备对应于由一个或多个物理用户设备提供的功能性。
根据第四方面,动作对应于传入信息的呈现,源实体对应于传入信息的发送者,所标识的用户对应于传入信息的接收者,并且(诸)用户设备通过将传入信息呈现给所标识的用户来执行该动作。
根据第五方面,动作对应于传出信息的呈现,源实体是所标识的用户(对应于传出信息的发送者),并且(诸)用户设备通过将传出信息提供给传出信息的接收者群组来执行该动作,该群组包括至少一个成员。
根据第六方面,以上所提及的群组包括在用户图中被指定为与所标识的用户具有密切关系的至少一个成员,其中以上所提及的选择操作部分地基于用户图中所指定的密切关系来选择经确定的模式。
根据第七方面,动作对应于处理任务的执行,源实体是所标识的用户,并且(诸)用户设备通过执行处理任务来执行该动作。
根据第八方面,动作对应于处理所指定的查询,源实体是所标识的用户,并且(诸)用户设备通过处理所指定的查询来执行该动作,(诸)用户设备中的每一个用户设备提供部分结果。
根据第九方面,该方法进一步包括:从(诸)用户设备接收部分结果的一个或多个实例;汇总部分结果的(诸)实例以产生最终结果;以及将最终结果呈现给所标识的用户。
根据第十方面,上下文信息的一个项标识至少一个人相对于所标识的用户的相应位置。
根据第十一方面,其中,作为第一因素,用户图指定被认为与所标识的用户具有密切关系的至少一个人。作为第二因素,当前上下文信息指示用户图中被标识为与所标识的用户具有密切关系的至少一个人当前紧邻着所标识的用户。以上所提及的选择操作包括取决于至少第一因素和第二因素来选择模式。
根据第十二方面,描述了一种由一个或多个计算设备实现的用于处理要执行计算机实现的动作的请求的路由系统。该系统包括被配置成从源实体接收要执行计算机实现的动作的请求的接口组件。该系统还包括活动监视组件,该活动监视组件被配置成在一时间跨度上从多个用户设备集合接收活动信息,该多个集合与相应用户相关联。活动监视组件还被配置成接收关于其中该请求正被作出的当前上下文的当前上下文信息。该系统还包括图形成组件,该图形成组件被配置成至少部分地基于与相应用户相关联的活动信息来形成与这些相应用户相关联的多个用户图,以及将用户图储存在数据存储中。该系统还包括模式选择组件,该模式选择组件被配置成确定执行动作的模式,以提供经确定的模式,该经确定的模式涉及对从用户设备的集合选择的一个或多个用户设备的使用,所述用户设备进而与所标识的用户相关联。模式选择组件被配置成通过以下来确定模式:访问与所标识的用户相关联的用户图,该用户图在因上下文而异的基础上标识所标识的用户与至少以下各项之间的关系:其他人、位置、动作相关的信息、时间相关的信息和设备相关的信息;以及至少部分地基于从用户图提取的关系信息连同当前上下文信息来选择经确定的模式。接口组件被进一步配置成向(诸)用户设备发送指令,以指导(诸)用户设备执行该动作。
根据第十三方面,接口组件、活动监视组件、图形成组件和模式选择组件至少部分地由与同所标识的用户相关联的用户设备的集合分开的至少一个远程计算设备来实现。
根据第十四方面,接口组件、活动监视组件、图形成组件和模式选择组件至少部分地由与所标识的用户相关联的用户设备的集合中的一个或多个用户设备来实现。
根据第十五方面,动作对应于传入信息的呈现,源实体对应于传入信息的发送者,所标识的用户对应于传入信息的接收者,并且(诸)用户设备通过将传入信息呈现给所标识的用户来执行该动作。
根据第十六方面,动作对应于传出信息的呈现,源实体是所标识的用户(对应于传出信息的发送者),并且(诸)用户设备通过将传出信息提供给传出信息的接收者群组来执行该动作,该群组包括至少一个成员。
根据第十七方面,动作对应于处理任务的执行,源实体是所标识的用户,并且(诸)用户设备通过执行处理任务来执行该动作。
根据第十八方面,动作对应于处理被指定的查询,源实体是所标识的用户,并且(诸)用户设备通过处理所指定的查询来执行该动作,(诸)用户设备中的每一个用户设备提供部分结果。
根据第十九方面,该路由系统进一步包括结果汇总组件,该结果汇总组件被配置成:从(诸)用户设备接收部分结果的一个或多个实例;汇总部分结果的(诸)实例以产生最终结果;以及将最终结果呈现给所标识的用户。
根据第二十方面,描述了一种用于储存计算机可读指令的计算机可读存储介质。该计算机可读指令在由一个或多个处理器用户设备执行时执行一种方法,该方法包括:在一时间跨度上从多个用户设备集合接收活动信息,该多个集合与相应用户相关联;至少部分地基于活动信息来创建多个用户图;将该多个用户图储存在数据存储中;从源实体接收要执行计算机实现的动作的请求;接收关于其中该请求正被执行的当前上下文的当前上下文信息;以及确定执行该动作的模式,以提供经确定的模式,该经确定的模式涉及对从与被标识的用户相关联的用户设备的集合选择的一个或多个用户设备的使用。该确定操作包括:访问与所标识的用户相关联的用户图。该图在因上下文而异的基础上标识所标识的用户与至少以下各项之间的关系:其他人;位置;动作相关的信息;时间相关的信息;和设备相关的信息。该确定操作进一步包括至少部分地基于从用户图提取的信息连同当前上下文信息来选择经确定的模式。该方法进一步包括向(诸)用户设备发送指令,以指导(诸)用户设备执行该动作。
第二十一方面对应于以上所提及的第一至第二十方面的任何组合(例如,任何排列或子集)。
第二十二方面对应于与第一至第二十一方面相关联的任何方法对应物、设备对应物、系统对应物、装置加功能对应物、计算机可读存储介质对应物、数据结构对应物、制品对应物、图形用户界面呈现对应物等。
最后,本文所描述的功能可采用各种机制来确保以符合适用法律、社会规范以及个体用户的期望和偏好的方式处理任何用户数据。例如,该功能可允许用户明确地选择进入(并且随后明确地选择退出)功能的供应。功能还可提供适当的安全机制来确保用户数据的私密性(诸如数据净化机制、加密机制、口令保护机制等)。
尽管用结构特征和/或方法动作专用的语言描述了本发明主题,但可以理解,所附权利要求书中定义的主题不必限于以上所描述的具体特征或动作。更确切而言,以上所描述的具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (15)

1.一种由一个或多个计算设备实现的用于处理要执行计算机实现的动作的请求的方法,包括:
从源实体接收要执行计算机实现的动作的请求;
接收关于其中所述请求正被作出的当前上下文的当前上下文信息;
确定执行所述动作的模式,以提供经确定的模式,所述经确定的模式涉及对从用户设备的集合选择的一个或多个用户设备的使用,所述用户设备进而与所标识的用户相关联,
所述确定包括:
访问与所标识的用户相关联的用户图,所述用户图在数据存储中被提供,
所述用户图在因上下文而异的基础上标识所标识的用户与至少以下各项之间的关系:其他人、位置、动作相关的信息、时间相关的信息、和设备相关的信息,
所述用户图中的所述关系在一时间跨度上至少基于由与所标识的用户相关联的用户设备的所述集合报告的活动信息而被形成;以及
至少部分地基于从所述用户图提取的关系信息连同所述当前上下文信息来选择所述经确定的模式;以及
向所述一个或多个用户设备发送指令,以指导所述一个或多个用户设备执行所述动作。
2.根据权利要求1所述的方法,其特征在于:
所述动作对应于传入信息的呈现;
所述源实体对应于所述传入信息的发送者;
所标识的用户对应于所述传入信息的接收者;以及
所述一个或多个用户设备通过将所述传入信息呈现给所标识的用户来执行所述动作。
3.根据权利要求1所述的方法,其特征在于:
所述动作对应于传出信息的呈现;
所述源实体是所标识的用户,该所标识的用户对应于所述传出信息的发送者;以及
所述一个或多个用户设备通过将所述传出信息提供给所述传出信息的接收者的群组来执行所述动作,所述群组包括至少一个成员。
4.根据权利要求1所述的方法,其特征在于:
所述动作对应于处理任务的执行;
所述源实体是所标识的用户;以及
所述一个或多个用户设备通过执行所述处理任务来执行所述动作。
5.根据权利要求1所述的方法,其特征在于:
所述动作对应于处理所指定的查询;
所述源实体是所标识的用户;以及
所述一个或多个用户设备通过处理所指定的查询来执行所述动作,所述一个或多个用户设备中的每一个用户设备提供部分结果。
6.根据权利要求5所述的方法,其特征在于,所述方法进一步包括:
从所述一个或多个用户设备接收部分结果的一个或多个实例;
汇总部分结果的所述一个或多个实例以产生最终结果;以及
将所述最终结果呈现给所标识的用户。
7.根据权利要求1所述的方法,其特征在于,上下文信息的一个项标识至少一个人相对于所标识的用户的相应位置。
8.根据权利要求1所述的方法,其特征在于:
作为第一因素,所述用户图指定被认为与所标识的用户具有密切关系的至少一个人,
作为第二因素,所述当前上下文信息指示所述用户图中被标识为与所标识的用户具有密切关系的至少一个人当前紧邻着所标识的用户,以及
其中对所述模式的所述选择取决于至少所述第一因素和所述第二因素。
9.一种由一个或多个计算设备实现的用于处理要执行计算机实现的动作的请求的路由系统,包括:
被配置成从源实体接收要执行计算机实现的动作的请求的接口组件;
活动监视组件,所述活动监视组件被配置成在一时间跨度上从多个用户设备集合接收活动信息,所述多个集合与相应用户相关联,
所述活动监视组件还被配置成接收关于其中所述请求正被作出的当前上下文的当前上下文信息;
图形成组件,所述图形成组件被配置成至少部分地基于与相应用户相关联的活动信息来形成与这些相应用户相关联的多个用户图,以及将所述用户图储存在数据存储中;
模式选择组件,所述模式选择组件被配置成确定执行所述动作的模式,以提供经确定的模式,所述经确定的模式涉及对从用户设备的集合选择的一个或多个用户设备的使用,所述用户设备进而与所标识的用户相关联,
所述模式选择组件被配置成通过以下来确定所述模式:
访问与所标识的用户相关联的用户图,所述用户图在因上下文而异的基础上标识所标识的用户与至少以下各项之间的关系:其他人、位置、动作相关的信息、时间相关的信息、和设备相关的信息;以及
至少部分地基于从所述用户图提取的关系信息连同所述当前上下文信息来选择所述经确定的模式;以及
所述接口组件被进一步配置成向所述一个或多个用户设备发送指令,以指导所述一个或多个用户设备执行所述动作。
10.一种用于储存计算机可读指令的计算机可读存储介质,所述计算机可读指令在由一个或多个处理器用户设备执行时执行一种方法,所述方法包括:
在一时间跨度上从多个用户设备集合接收活动信息,所述多个集合与相应用户相关联;
至少部分地基于所述活动信息来创建多个用户图;
将所述多个用户图储存在数据存储中;
从源实体接收要执行计算机实现的动作的请求;
接收关于其中所述请求正被作出的当前上下文的当前上下文信息;
确定执行所述动作的模式,以提供经确定的模式,所述经确定的模式涉及对从与所标识的用户相关联的用户设备的集合选择的一个或多个用户设备的使用,
所述确定包括:
访问与所标识的用户相关联的用户图,所述用户图在因上下文而异的基础上标识所标识的用户与至少以下各项之间的关系:其他人、位置、动作相关的信息、时间相关的信息、和设备相关的信息;以及
至少部分地基于从所述用户图提取的信息连同所述当前上下文信息来选择所述经确定的模式;以及
向所述一个或多个用户设备发送指令,以指导所述一个或多个用户设备执行所述动作。
11.根据权利要求9所述的路由系统,其特征在于:
所述动作对应于传入信息的呈现;
所述源实体对应于所述传入信息的发送者;
所标识的用户对应于所述传入信息的接收者;以及
所述一个或多个用户设备通过将所述传入信息呈现给所标识的用户来执行所述动作。
12.根据权利要求9所述的路由系统,其特征在于:
所述动作对应于传出信息的呈现;
所述源实体是所标识的用户,该所标识的用户对应于所述传出信息的发送者;以及
所述一个或多个用户设备通过将所述传出信息提供给所述传出信息的接收者的群组来执行所述动作,所述群组包括至少一个成员。
13.根据权利要求9所述的路由系统,其特征在于:
所述动作对应于处理任务的执行;
所述源实体是所标识的用户;以及
所述一个或多个用户设备通过执行所述处理任务来执行所述动作。
14.根据权利要求9所述的路由系统,其特征在于:
所述动作对应于处理所指定的查询;
所述源实体是所标识的用户;以及
所述一个或多个用户设备通过处理所指定的查询来执行所述动作,所述一个或多个用户设备中的每一个用户设备提供部分结果。
15.根据权利要求14所述的路由系统,其特征在于,所述路由系统进一步包括结果汇总组件,所述结果汇总组件被配置成:
从所述一个或多个用户设备接收部分结果的一个或多个实例;
汇总部分结果的所述一个或多个实例以产生最终结果;以及
将所述最终结果呈现给所标识的用户。
CN201780004854.9A 2016-01-29 2017-01-16 基于用户图将动作路由到用户设备 Active CN108431779B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/010,655 2016-01-29
US15/010,655 US10069697B2 (en) 2016-01-29 2016-01-29 Routing actions to user devices based on a user graph
PCT/US2017/013632 WO2017131991A1 (en) 2016-01-29 2017-01-16 Routing actions to user devices based on a user graph

Publications (2)

Publication Number Publication Date
CN108431779A true CN108431779A (zh) 2018-08-21
CN108431779B CN108431779B (zh) 2021-11-23

Family

ID=57960831

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780004854.9A Active CN108431779B (zh) 2016-01-29 2017-01-16 基于用户图将动作路由到用户设备

Country Status (4)

Country Link
US (2) US10069697B2 (zh)
EP (1) EP3408743A1 (zh)
CN (1) CN108431779B (zh)
WO (1) WO2017131991A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10726343B2 (en) 2016-11-09 2020-07-28 Cognitive Scale, Inc. Performing compliance operations using cognitive blockchains
US10726346B2 (en) 2016-11-09 2020-07-28 Cognitive Scale, Inc. System for performing compliance operations using cognitive blockchains
US10628491B2 (en) 2016-11-09 2020-04-21 Cognitive Scale, Inc. Cognitive session graphs including blockchains
US10621233B2 (en) 2016-11-09 2020-04-14 Cognitive Scale, Inc. Cognitive session graphs including blockchains
US10719771B2 (en) 2016-11-09 2020-07-21 Cognitive Scale, Inc. Method for cognitive information processing using a cognitive blockchain architecture
US10726342B2 (en) 2016-11-09 2020-07-28 Cognitive Scale, Inc. Cognitive information processing using a cognitive blockchain architecture
US20180165612A1 (en) * 2016-12-09 2018-06-14 Cognitive Scale, Inc. Method for Providing Commerce-Related, Blockchain-Associated Cognitive Insights Using Blockchains
US20180165611A1 (en) * 2016-12-09 2018-06-14 Cognitive Scale, Inc. Providing Commerce-Related, Blockchain-Associated Cognitive Insights Using Blockchains
US11080629B2 (en) * 2019-03-22 2021-08-03 Microsoft Technology Licensing, Llc Automatically generating activity summaries based on signals obtained from plural devices and logic components

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017137A1 (fr) * 2001-08-21 2003-02-27 Fujitsu Limited Dispositif de gestion de profils d'utilisateurs et dispositif de recommandation
CN1755683A (zh) * 2004-09-30 2006-04-05 微软公司 上下文动作的发布
US20110078160A1 (en) * 2009-09-25 2011-03-31 International Business Machines Corporation Recommending one or more concepts related to a current analytic activity of a user
WO2012150602A1 (en) * 2011-05-03 2012-11-08 Yogesh Chunilal Rathod A system and method for dynamically monitoring, recording, processing, attaching dynamic, contextual & accessible active links & presenting of physical or digital activities, actions, locations, logs, life stream, behavior & status
CN103218554A (zh) * 2013-03-18 2013-07-24 卡巴斯基实验室封闭式股份公司 用于基于用户行为适应性控制用户动作的系统和方法
US20150072674A1 (en) * 2012-06-11 2015-03-12 Apple Inc. Location-Based Device Automation
CN104956715A (zh) * 2013-01-25 2015-09-30 高通股份有限公司 对移动设备上的行为特征的自适应观察

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030055867A1 (en) 2001-07-31 2003-03-20 Openwave Systems Inc. Inter-device linking for presentation of information on devices connected to a communication system
WO2003071441A1 (en) 2002-02-19 2003-08-28 Pda Verticals Corp. Multiple wireless device synchronization server
US7761591B2 (en) * 2005-12-16 2010-07-20 Jean A. Graham Central work-product management system for coordinated collaboration with remote users
US7817991B2 (en) 2006-02-14 2010-10-19 Microsoft Corporation Dynamic interconnection of mobile devices
US9101279B2 (en) * 2006-02-15 2015-08-11 Virtual Video Reality By Ritchey, Llc Mobile user borne brain activity data and surrounding environment data correlation system
US8538676B2 (en) * 2006-06-30 2013-09-17 IPointer, Inc. Mobile geographic information system and method
US7769740B2 (en) * 2007-12-21 2010-08-03 Yahoo! Inc. Systems and methods of ranking attention
US9626685B2 (en) * 2008-01-04 2017-04-18 Excalibur Ip, Llc Systems and methods of mapping attention
US8473429B2 (en) 2008-07-10 2013-06-25 Samsung Electronics Co., Ltd. Managing personal digital assets over multiple devices
CN102473196B (zh) * 2010-06-04 2015-08-12 松下电器产业株式会社 内容输出装置、内容输出方法及内容输出集成电路
US20130110565A1 (en) * 2011-04-25 2013-05-02 Transparency Sciences, Llc System, Method and Computer Program Product for Distributed User Activity Management
AU2011348835B2 (en) * 2011-07-28 2016-03-24 Huawei Technologies Co., Ltd. Method and device for implementing memory migration
WO2013075071A1 (en) * 2011-11-18 2013-05-23 Ayman Hammad Mobile wallet store and service injection platform apparatuses, methods and systems
US10210480B2 (en) 2012-05-31 2019-02-19 Apple Inc. Avoiding a redundant display of a notification on multiple user devices
CN103546493B (zh) 2012-07-09 2018-12-28 上海博路信息技术有限公司 一种跨设备通信方法
US20140047019A1 (en) 2012-08-07 2014-02-13 James Dean Midtun Communication Alerts Management
US20150363481A1 (en) * 2012-09-06 2015-12-17 Michael N. Haynes Systems, Devices, and/or Methods for Managing Information
US9350693B2 (en) 2012-12-17 2016-05-24 Lookout, Inc. Method and apparatus for cross device notifications
WO2014139113A1 (en) 2013-03-14 2014-09-18 Intel Corporation Cross device notification apparatus and methods
WO2014139054A1 (en) 2013-03-15 2014-09-18 Yahoo! Inc. Method and system for cross device notification
WO2015008470A2 (en) * 2013-07-16 2015-01-22 Seiko Epson Corporation Information processing apparatus, information processing method, and information processing system
US9332081B2 (en) 2013-08-30 2016-05-03 Google Inc. Anonymous cross-device linking using temporal identifiers
JP6413574B2 (ja) * 2014-10-01 2018-10-31 セイコーエプソン株式会社 活動状態情報検出装置及び活動状態情報検出装置の制御方法
US10157350B2 (en) * 2015-03-26 2018-12-18 Tata Consultancy Services Limited Context based conversation system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003017137A1 (fr) * 2001-08-21 2003-02-27 Fujitsu Limited Dispositif de gestion de profils d'utilisateurs et dispositif de recommandation
CN1755683A (zh) * 2004-09-30 2006-04-05 微软公司 上下文动作的发布
US20110078160A1 (en) * 2009-09-25 2011-03-31 International Business Machines Corporation Recommending one or more concepts related to a current analytic activity of a user
WO2012150602A1 (en) * 2011-05-03 2012-11-08 Yogesh Chunilal Rathod A system and method for dynamically monitoring, recording, processing, attaching dynamic, contextual & accessible active links & presenting of physical or digital activities, actions, locations, logs, life stream, behavior & status
US20150072674A1 (en) * 2012-06-11 2015-03-12 Apple Inc. Location-Based Device Automation
CN104956715A (zh) * 2013-01-25 2015-09-30 高通股份有限公司 对移动设备上的行为特征的自适应观察
CN103218554A (zh) * 2013-03-18 2013-07-24 卡巴斯基实验室封闭式股份公司 用于基于用户行为适应性控制用户动作的系统和方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
AMAR RAMDANE-CHERIF ET AL.: "《Analysis of a New Ubiquitous Multimodal Multimedia Computing System》", 《NINTH IEEE INTERNATIONAL SYMPOSIUM ON MULTIMEDIA (ISM 2007)》 *
MANOLO DULVA HINA ET AL.: "《Attribute-Driven Design of Incremental Learning Component of a Ubiquitous Multimodal Multimedia Computing System》", 《2006 CANADIAN CONFERENCE ON ELECTRICAL AND COMPUTER ENGINEERING》 *
MANOLO DULVA HINA ET AL.: "《Machine Learning-Assisted Device Selection in a Context-Sensitive Ubiquitous Multimodal Multimedia Computing System》", 《2006 IEEE INTERNATIONAL SYMPOSIUM ON INDUSTRIAL ELECTRONICS》 *
李国强: "《基于用户偏好的个性化业务适变决策技术研究》", 《中国博士学位论文全文数据库(电子期刊)》 *

Also Published As

Publication number Publication date
US20170222892A1 (en) 2017-08-03
WO2017131991A1 (en) 2017-08-03
US10069697B2 (en) 2018-09-04
US10749767B2 (en) 2020-08-18
CN108431779B (zh) 2021-11-23
EP3408743A1 (en) 2018-12-05
US20180343178A1 (en) 2018-11-29

Similar Documents

Publication Publication Date Title
CN108431779A (zh) 基于用户图将动作路由到用户设备
CN111615712B (zh) 多日历协调
CN107924506A (zh) 推断通信的用户可用性和基于用户可用性或上下文改变通知设置
CN105917349A (zh) 对请求的用户数据的隐私过滤以及上下文激活的隐私模式
CN107636647A (zh) 自动提取通信和内容中的承诺和请求
CN101432719A (zh) 基于社会化网络活动信息的情景移动本地搜索
CN104685532A (zh) 人身安全和应急服务
JP5915341B2 (ja) 情報処理装置、情報処理方法及びコンピュータプログラム
US11734027B2 (en) Data storage and retrieval system for subdividing unstructured platform-agnostic user input into platform-specific data objects and data entities
JP7119098B2 (ja) メッセージングサービス環境におけるユーザ状況の感知と、ユーザ状況に基づくメッセージングサービスとのインタラクション
Chen et al. Are you killing time? Predicting smartphone users’ time-killing moments via fusion of smartphone sensor data and screenshots
Tarasewich Towards a comprehensive model of context for mobile and wireless computing
Park et al. Building mobile social network with semantic relation using Bayesian network-based life-log mining
Groh et al. Applications for social situation models
Harish et al. VFF–A framework for linking virtual assistants with IoT
Lupiana Context modeling for context-aware systems
Yu et al. Socially aware computing: Concepts, technologies, and practices
Castro Garrido et al. OBCAS: an agent-based system and ontology for mobile context aware interactions
de Almeida et al. Using ontologies in context-aware applications
JP7321338B2 (ja) メッセージングサービス環境におけるユーザ状況の感知と、ユーザ状況に基づくメッセージングサービスとのインタラクション
Knox et al. Towards Scatterbox: a context-aware message forwarding platform
CN110383799A (zh) 信息处理终端以及自动响应方法
Curran Innovative applications of ambient intelligence: advances in smart systems: advances in smart systems
Stamm et al. Mobile intelligent interruptions management (MIIM) a context aware unavailability system
Lovett Sensing and interactive intelligence in mobile context aware systems

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant