CN110192209A - 基于物理图形来采取动作 - Google Patents
基于物理图形来采取动作 Download PDFInfo
- Publication number
- CN110192209A CN110192209A CN201880007387.XA CN201880007387A CN110192209A CN 110192209 A CN110192209 A CN 110192209A CN 201880007387 A CN201880007387 A CN 201880007387A CN 110192209 A CN110192209 A CN 110192209A
- Authority
- CN
- China
- Prior art keywords
- physical
- movement
- computing system
- entity
- agency
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/532—Query formulation, e.g. graphical querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/045—Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2803—Home automation networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Automation & Control Theory (AREA)
- User Interface Of Digital Computer (AREA)
- Navigation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Pharmaceuticals Containing Other Organic And Inorganic Compounds (AREA)
- Image Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Manipulator (AREA)
Abstract
基于物理图形来采取动作。动作的采取通过对解释来自用户的(多个)命令(诸如自然语言命令)的代理的使用而发生。代理通过制定针对物理图形的至少一个查询来响应于命令,该物理图形表示物理空间内的一个或多个物理实体的状态并且由多个传感器观察。代理然后使用针对物理图形的一个或多个查询。响应于对其的响应,代理标识要采取的动作。这样的动作可以包括诸如向用户呈现信息以及向其他人发送出通信的动作。然而,动作甚至可以包括物理动作。例如,代理可以包括执行物理动作(诸如经由机器人或无人机)的物理动作引擎。
Description
背景技术
计算系统和相关联的网络极大地改变了我们的世界。起初,计算系统只能执行简单的任务。然而,随着处理能力的增加并且变得越来越可用,由计算系统执行的任务的复杂性已经大大增加。同样,计算系统的硬件复杂性和能力也大大增加,例如由大型数据中心支持的云计算。
长期以来,计算系统基本上完成了他们的指令或软件所告知的内容。然而,软件和硬件的使用变得如此先进,以至于计算系统现在比以往任何时候都能够在更高层次上进行某种程度的决策。目前,在某些方面,决策水平可以接近,竞争或甚至超过人类大脑做出决策的能力。换言之,计算系统现在能够采用某种程度的人工智能。
人工智能的一个示例是识别来自物理世界的外部刺激。例如,语音识别技术已经大大改进,以允许高度准确地检测正在说出的单词,甚至是正在讲话的人的身份。同样地,计算机视觉允许计算系统自动标识特定图片或视频帧内的对象,或者识别跨一系列视频帧的人类活动。作为示例,面部识别技术允许计算系统识别面部,并且活动识别技术允许计算系统知道两个邻近的人是否在一起工作。
这些技术中的每一种都可以采用深度学习(基于深度神经网络和基于强化的学习机制)和机器学习算法来从经验中学习产生声音的是什么、以及图像内的对象或人物,从而随时间提高识别的准确性。在识别具有大量视觉干扰的更复杂的成像场景内的对象的领域中,先进的计算机视觉技术现在超出了人类快速且准确地识别该场景内的感兴趣对象的能力。诸如传统图形处理单元(GPU)中的矩阵变换硬件等硬件也可以有助于在深度神经网络的上下文中进行快速对象识别。
本文中要求保护的主题不限于解决任何缺点或仅在诸如上述那些环境中操作的实施例。而是,提供该背景仅用于说明可以实践本文中描述的一些实施例的一个示例性技术领域。
发明内容
本文中描述的至少一些实施例涉及基于物理图形来采取动作。通过解释来自用户的一个或多个命令的代理的使用来采取动作。例如,命令可以由用户以自然语言发出,在这种情况下,命令经由自然语言引擎来解释。代理通过制定针对物理图形的至少一个查询来响应于(多个)命令,该物理图形表示物理空间内的一个或多个物理实体的状态并且由多个传感器观察。代理然后使用针对物理图形的查询。响应于其响应,代理标识要采取的动作。这样的动作可以包括诸如向用户呈现信息以及将通信发送给其他人等动作。然而,这些动作甚至可以包括物理动作。例如,代理可以包括执行物理动作(例如,经由机器人或无人机)的物理动作引擎。
因此,本文中描述的原理提供了一种通过评估真实世界的一部分的图形来响应于用户发出的查询和命令的现实代理。在一些实施例中,现实代理甚至可以响应于用户发出的查询和命令来影响真实世界。代理成为真实世界中用户的放大。代理具有更多的能力来观察用户经常可以获取的真实世界信息和活动。代理具有更多的能力来记忆和推理这些真实世界信息。最后,代理可能具有更多的能力来基于来自真实世界的信息和推理来在真实世界中进行物理动作。
提供本“发明内容”是为了以简化的形式介绍一些概念,这些概念将在下面的“具体实施方式”中进一步描述。本“发明内容”不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
附图说明
为了描述可以获取本发明的上述和其他优点和特征的方式,将通过参考附图中所示的具体实施例来呈现上面简要描述的本发明的更具体的描述。应当理解,这些附图仅描绘了本发明的典型实施例,因此不应当被认为是对其范围的限制,本发明将通过使用附图的附加特征和细节进行描述和解释,在附图中:
图1示出了可以采用本文中描述的原理的示例计算机系统;
图2示出了可以在其中操作本文中描述的原理的环境,该环境包括具有多个物理实体和多个传感器的物理空间、感测物理空间内的物理实体的特征的识别组件、和特征存储器,特征存储器存储这样的物理实体的感测特征,使得可以针对这些特征执行计算和查询;
图3示出了用于跟踪位置内的物理实体并且可以在图2的环境中执行的方法的流程图;
图4示出了可以用于帮助执行图3的方法并且可以用于稍后对所跟踪的物理实体执行查询的实体跟踪数据结构;
图5示出了用于有效地绘出感兴趣的信号段的方法的流程图;
图6示出了用于控制对由物理空间中的一个或多个传感器感测的信息的创建或访问的方法的流程图;
图7示出了循环流程,其示出了除了在物理空间中创建感测特征的计算机可导航图形之外,还可以修剪计算机可导航图形以从而保持真实世界的计算机可导航图形处于可管理大小;
图8示出了用于代理(本文中也被称为“现实代理”)基于真实世界观察来采取动作的方法的流程图;
图9示出了用于代理(例如,图8的代理)响应于用户命令来采取动作的示例操作环境;以及
图10示出了用于设置用于执行一个或多个动作的一个或多个物理条件的方法的流程图。
具体实施方式
本文中描述的至少一些实施例涉及基于物理图形来采取动作。通过解释来自用户的一个或多个命令的代理的使用来采取动作。例如,命令可以由用户以自然语言发出,在这种情况下,命令经由自然语言引擎来解释。代理通过制定针对物理图形的至少一个查询来响应于(多个)命令,该物理图形表示物理空间内的一个或多个物理实体的状态并且由多个传感器观察。代理然后使用针对物理图形的查询。响应于其响应,代理标识要采取的动作。这样的动作可以包括诸如向用户呈现信息以及将通信发送给其他人等动作。然而,这些动作甚至可以包括物理动作。例如,代理可以包括执行物理动作(例如,经由机器人或无人机)的物理动作引擎。
因此,本文中描述的原理提供了一种通过评估真实世界的一部分的图形来响应于用户发出的查询和命令的现实代理。在一些实施例中,现实代理甚至可以响应于用户发出的查询和命令来影响真实世界。代理成为真实世界中用户的放大。代理具有更多的能力来观察用户经常可以获取的真实世界信息和活动。代理具有更多的能力来记忆和推理这些真实世界信息。最后,代理可能具有更多的能力来基于来自真实世界的信息和推理来在真实世界中进行物理动作。
因为本文中描述的原理在计算系统的上下文中操作,所以将关于图1描述计算系统。然后,将关于图2至图4描述可以执行环境计算的基础的原理。然后将关于图5描述从计算机可导航图形获取信号段。此后,将关于图6描述环境计算环境中的安全性应用。将关于图7描述管理计算机可导航图形的大小。然后将关于图8和图9描述现实代理。最后,关于图10描述通过指定物理条件来影响未来的方法。
计算系统现在越来越多地采用各种各样的形式。例如,计算系统可以是手持设备、电器、膝上型计算机、台式计算机、大型机、分布式计算系统、数据中心、或甚至传统上没有被认为是计算系统的设备,诸如可穿戴设备(例如,眼镜、手表、腕带等)。在本说明书和权利要求书中,术语“计算系统”被广义地定义为包括具有至少一个物理有形处理器以及能够在其上具有可以由处理器执行的计算机可执行指令的物理和有形存储器的任何设备或系统(或其组合)。存储器可以采用任何形式,并且可以取决于计算系统的性质和形式。计算系统可以分布在网络环境上,并且可以包括多个组成计算系统。
如图1所示,在其最基本配置中,计算系统100通常包括至少一个硬件处理单元102和存储器104。存储器104可以是物理系统存储器,其可以是易失性的、非易失性的、或两者的某种组合。术语“存储器”在本文中也可以用于指代非易失性大容量存储器,诸如物理存储介质。如果计算系统是分布式的,则处理、存储器和/或存储能力也可以是分布式的。
计算系统100上具有通常被被称为“可执行组件”的多个结构。例如,计算系统100的存储器104被示出为包括可执行组件106。术语“可执行组件”是计算领域的普通技术人员很好地理解为可以是软件、硬件或其组合的结构的结构的名称。例如,当以软件实现时,本领域普通技术人员可以理解,可执行组件的结构可以包括可以在计算系统上执行的软件对象、例程、方法,而无论这样的可执行组件是否存在于计算系统的堆中,或者无论可执行组件是否存在于计算机可读存储介质上。
在这样的情况下,本领域普通技术人员将认识到,可执行组件的结构存在于计算机可读介质上,使得当由计算系统的一个或多个处理器(例如,由处理器线程)解释时,计算系统被使得执行功能。这样的结构可以由处理器直接计算机可读(如果可执行组件是二进制的,则就是这种情况)。或者,结构可以被构造为可解释和/或编译(无论是在单个阶段还是在多个阶段中),以便生成由处理器直接可解释的这样的二进制文件。当使用术语“可执行组件”时,对可执行组件的示例结构的这样的理解完全在计算领域的普通技术人员的理解之内。
术语“可执行组件”以被本领域普通技术人员很好地理解为包括专门或近似专门用硬件实现的结构,诸如现场可编程门阵列(FPGA)、专用集成电路(ASIC)或任何其他专用电路。因此,术语“可执行组件”是用于计算领域的普通技术人员很好地理解的结构的术语,无论该结构是以软件、硬件还是以组合的方式实现。在本说明书中,也可以使用术语“组件”。如在本说明书和在该情况下所使用的,该术语(无论该术语是否用一个或多个修饰符修饰)也旨在与术语“可执行组件”同义或者是特定类型的这种“可执行组件”,并且因此也具有计算领域的普通技术人员很好理解的结构。
在以下描述中,参考由一个或多个计算系统执行的动作来描述实施例。如果这些动作以软件实现,则(执行动作的相关联的计算系统的)一个或多个处理器响应于已经执行构成可执行组件的计算机可执行指令来指导计算系统的操作。例如,这样的计算机可执行指令可以在形成计算机程序产品的一个或多个计算机可读介质上实施。这种操作的示例涉及数据的操纵。
计算机可执行指令(和所操纵的数据)可以存储在计算系统100的存储器104中。计算系统100还可以包含允许计算系统100通过例如网络110与其他计算系统通信的通信信道108。
尽管不是所有计算系统都需要用户界面,但是在一些实施例中,计算系统100包括用户界面112用于在与用户交互时使用。用户界面112可以包括输出机构112A以及输入机构112B。本文中描述的原理不限于精确的输出机构112A或输入机构112B,因为这将取决于设备的性质。然而,输出机构112A可以包括例如扬声器、显示器、触觉输出、全息图、虚拟现实等。输入机构112B的示例可以包括麦克风、触摸屏、全息图、虚拟现实、相机、键盘、其他指示器输入的鼠标、任何类型的传感器等。
本文中描述的实施例可以包括或利用包括计算机硬件(诸如例如一个或多个处理器和系统存储器)的专用或通用计算系统,如下面更详细讨论的。本文中描述的实施例还包括用于携带或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可以被通用或专用计算系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是物理存储介质。携带计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,实施例可以包括至少两种截然不同的计算机可读介质:存储介质和传输介质。
计算机可读存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或者可以用于以计算机可执行指令或数据结构的形式存储期望的程序代码装置并且可以由通用或专用计算系统访问的任何其他物理和有形存储介质。
“网络”被定义为能够在计算系统和/或模块和/或其他电子设备之间传输电子数据的一个或多个数据链路。当通过网络或另一通信连接(硬连线、无线或者硬连线或无线的组合)向计算系统传输或提供信息时,计算系统将连接正确地视为传输介质。传输介质可以包括可以用于以计算机可执行指令或数据结构的形式携带期望的程序代码装置并且可以由通用或专用计算系统访问的网络和/或数据链路。上述的组合也应当被包括在计算机可读介质的范围内。
此外,在到达各种计算系统组件时,计算机可执行指令或数据结构形式的程序代码装置可以从传输介质自动传输到存储介质(反之亦然)。例如,通过网络或数据链路接收的计算机可执行指令或数据结构可以缓存在网络接口模块(例如,“NIC”)内的RAM中,并且然后最终传送到计算系统RAM和/或计算系统处的较不易失性存储介质。因此,应当理解,可读介质可以被包括在也(甚至主要)利用传输介质的计算系统组件中。
计算机可执行指令包括例如当在处理器处执行时使得通用计算系统、专用计算系统或专用处理设备执行特定功能或功能组的指令和数据。替代地或另外地,计算机可执行指令可以将计算系统配置为执行某个功能或功能组。计算机可执行指令可以是例如二进制文件或者甚至在处理器直接执行之前经历一些转换(诸如编译)的指令,诸如中间格式指令,诸如汇编语言或甚至源代码。
本领域技术人员将理解,本发明可以在具有很多类型的计算系统配置的网络计算环境中实践,包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持设备、多处理器系统、基于微处理器或可编程的消费电子产品、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机、数据中心、可穿戴设备(诸如眼镜或手表)等。本发明也可以在分布式系统环境中实施,其中通过网络链接(通过硬连线数据链路、无线数据链路或者通过硬连线和无线数据链路的组合)的本地和远程计算系统都执行任务。在分布式系统环境中,程序模块可以位于本地和远程存储器存储设备两者中。
本领域技术人员还将理解,本发明可以在云计算环境中实践。云计算环境可以是分布式的,但这不是必需的。在分布式的情况下,云计算环境可以在国际上在组织内分布和/或具有跨越多个组织而拥有的组件。在本说明书和以下权利要求中,“云计算”被定义为用于实现对可配置计算资源(例如,网络、服务器、存储器、应用和服务)的共享池的按需网络访问的模型。“云计算”的定义并不局限于在适当部署时可以从这样的模型中获取的其他很多优点。
例如,云计算当前在市场中使用以便提供对可配置计算资源的共享池的普遍且方便的按需访问。此外,可配置计算资源的共享池可以经由虚拟化快速供应并且以低管理工作量或服务提供商交互发布,并且然后相应地进行缩放。
云计算模型可以由各种特性组成,诸如按需自助服务、广泛网络访问、资源池、快速弹性、测量服务等。云计算模型还可以按照各种服务模型的形式出现,例如,软件即服务(“SaaS”)、平台即服务(“PaaS”)和基础设施即服务(“IaaS”)。云计算模型还可以使用不同的部署模型来部署,诸如私有云、社区云、公共云、混合云等。在本说明书和权利要求书中,“云计算环境”是其中采用云计算的环境。
图2示出了本文中描述的原理可以在其中运行的环境200。环境200包括物理空间201,物理空间201包括多个物理实体210,物理实体210可以是发射或反射物理信号(诸如电磁辐射或声学)的任何现存对象、人或事物,这些物理信号具有可以用于潜在地标识相应对象、人或事物的一个或多个物理特征(在本文中也被称为状态)的图案。这种潜在地标识电磁辐射的示例是具有光图案(例如,静止图像或视频)的可见光,可以从该光图案中确定可见实体的特性。这种光图案可以是任何时间、空间或甚至更高维度的空间。这种声学的一个示例可以是人的声音、正常操作中或经历活动或事件的对象的声音、或者反射的声学回声。
环境200还包括从物理实体210接收物理信号的传感器220。传感器当然不需要拾取物理实体发射或反射的每个物理信号。例如,可见光相机(静止或视频)能够接收可见光形式的电磁辐射并且将这些信号转换为可处理的形式,但不能拾取任何频率的所有电磁辐射,因为相机都具有有限的动态范围。声学传感器同样具有针对特定频率范围而设计的有限的动态范围。在任何情况下,传感器220将所得到的传感器信号提供(如箭头229所示)给识别组件230。
识别组件230至少基于在所接收的传感器信号中检测到的模式来估计(例如,估计或识别)该位置内的物理实体210的一个或多个特征。识别组件230还可以生成与物理实体的特征的“至少估计”相关联的置信水平。如果该置信水平小于100%,则“至少估计”仅仅是估计。如果该置信水平为100%,则“至少估计”实际上不仅仅是估计——它是识别。在本说明书的其余部分和权利要求中,“至少估计”的特征也将被称为“感测”特征以提高清晰度。这与术语“感测”的普通用法相一致,因为“感测”的特征并不总是完全确定地存在。识别组件230可以采用深度学习(基于深度神经网络和基于强化的学习机制)和机器学习算法来从经验中学习图像内的对象或人物,从而随时间提高识别的准确性。
识别组件230将感测特征提供(如箭头239所示)到感测特征存储库240中,感测特征存储库240可以存储位置201内的每个物理实体的感测特征(和相关联的置信水平),而无论物理实体是在短时间内,在长时间内还是永久地在物理空间内。计算组件250然后可以对在感测特征存储库240中提供的感测特征数据执行各种查询和/或计算。查询和/或计算可以通过计算组件250与感测特征存储库240之间的交互(由箭头249表示)来实现。
在一些实施例中,当识别组件230使用由传感器提供的(多个)传感器信号感测位置201内的物理实体的感测特征时,传感器信号也被提供给存储器,诸如感测特征存储库。例如,在图2中,感测特征存储库240被示出为包括感测特征241以及表示感测特征的证据的相应传感器信号242。
针对多个感测实体中的至少一个实体的至少一个(并且优选地是多个)感测特征,至少一个信号段与感测特征计算机相关联,使得到感测特征的计算机导航也实现到信号段的计算机导航。可以连续地执行感测信号与相关联的信号段的关联,从而产生扩展图形和信号段的扩展集合。也就是说,如下面进一步描述的,可以使用垃圾收集过程来清除过时或不再感兴趣的感测特征和/或信号段。
信号段可以包括多条元数据,例如,生成信号段的传感器的标识。信号段不需要包括由该传感器生成的所有信号,并且为了简洁,可能仅包括用于感测特定物理实体的感测特征的那些信号部分。在这种情况下,元数据可以包括对所存储的原始信号段的部分的描述。
感测信号可以是由传感器生成的任何类型的信号。示例包括视频、图像和音频信号。然而,各种信号不限于人类可以感测的信号。例如,信号段可以表示由传感器生成的信号的变换版本以允许人类观察到更好的人类焦点。这种变换可以包括滤波(诸如基于频率的滤波)或量化。这种变换还可以包括扩大、频移、速度调节、放大、幅度调节等。
为了允许减少存储要求以及适当地关注感兴趣的信号,可能仅存储信号段的一部分。例如,如果是视频信号,则可能仅存储视频的一部分帧。此外,针对任何给定图像,可能仅存储帧的相关部分。同样,如果传感器信号是图像,则可能仅存储图像的相关部分。使用信号段来感测特征的识别服务知道信号段的哪个部分用于感测特征。因此,识别服务可以针对任何给定的感测特征专门地划出信号的相关部分。
计算组件250还可以具有可以确定对感测特征存储库240的数据的访问的安全组件251。例如,安全组件251可以控制哪些用户可以访问感测特征数据241和/或传感器信号242。此外,安全组件251甚至可以控制对哪些感测特征数据执行计算,和/或哪个用户被授权执行什么类型的计算或查询。因此,有效地实现了安全性。关于该安全性的更多内容将在下面关于图6进行描述。
由于感测特征数据表示随时间的物理空间201内的物理实体的感测特征,因此可以对物理空间201内的物理实体执行复杂计算。如下所述,针对用户,好像环境本身充满了有用的计算能力,以便为任何有关该物理空间的计算查询或计算做好准备。这在下文中也被称为“环境计算”。
此外,每当对感测特征感兴趣时,可以重构支持感测该特征的识别组件的证据。例如,计算组件240可以提供特定物理实体何时首次进入特定位置的视频证据。如果多个传感器生成由识别组件用于感测该特征的传感器信号,则可以重构和评估任何单个传感器或传感器组合的传感器信号。因此,例如,可以从不同角度查看物理实体首次进入特定位置的视频证据。
物理空间201在图2中示出,并且仅旨在作为其中具有传感器的任何物理空间的抽象表示。这样的物理空间有无数的示例,但示例包括房间、房屋、社区、工厂、体育馆、建筑物、地板、办公室、汽车、飞机、航天器、培养皿、管子或管道、大气、地下空间、洞穴、土地、其组合和/或部分。物理空间201可以是可观察宇宙的整体或其任何部分,只要存在能够接收从位置内的物理实体发射、受其影响(例如,衍射、频移、回波等)和/或从其反射的信号的传感器。
仅作为示例,物理空间201内的物理实体210被示出为包括四个物理实体211、212、213和214。椭圆215表示可以存在具有基于来自传感器220的数据而感测的特征的任何数目和种类的物理实体。椭圆215还表示物理实体可以退出和进入位置201。因此,位置201内的物理实体的数目和身份可以随时间改变。
物理实体的位置也可以随时间改变。尽管物理实体的位置在图2中被示出为在物理空间201的上部部分中,但这仅仅是为了清楚标记。本文中描述的原理不依赖于占据物理空间201内的任何特定物理位置的任何特定物理实体。
最后,仅为了惯例并且为了将物理实体210与传感器220区分开,物理实体210被示出为三角形,并且传感器220被示出为圆圈。当然,物理实体210和传感器220可以具有任何物理形状或尺寸。物理实体通常不是三角形,并且传感器通常不是圆形的。此外,传感器220可以观察物理空间201内的物理实体,而不考虑这些传感器220是否在物理上位于该物理空间201内。
仅作为示例,物理空间201内的传感器220被示出为包括两个传感器221和222。椭圆223表示可以存在能够接收由物理空间内的物理实体发射、受其影响(例如,经由衍射、频移、回波等)和/或由其反射的信号的任何数目和种类的传感器。随着物理空间内的传感器被添加、移除、升级、破坏、替换等,可操作传感器的数目和能力可能随时间改变。
图3示出了用于跟踪物理空间内的物理实体的方法300的流程图。由于可以执行方法300以跟踪图2的物理空间201内的物理实体210,现在将频繁地参考图2的环境200来描述图3的方法300。此外,图4示出了可以用于帮助执行方法300并且可以用于稍后对所跟踪的物理实体执行查询并且可能还用于访问和查看与所跟踪的物理实体相关联的传感器信号的实体跟踪数据结构400。此外,实体跟踪数据结构400可以存储在图4的感测特征存储库240中(其被表示为感测特征数据241)。因此,还将频繁地参考图4的实体跟踪数据结构400来描述图3的方法300。
为了协助跟踪,建立物理空间的空间-时间数据结构(动作301)。这可以是分布式数据结构或非分布式数据结构。图4示出了包括空间-时间数据结构401的实体跟踪数据结构400的示例。该实体跟踪数据结构400被可以包括在图2的感测特征存储库240内作为感测特征数据241。虽然本文中描述的原理是关于跟踪物理实体及其感测特征和活动来描述的,但是本文中描述的原理可以用于跟踪多于一个位置内的物理实体(及其感测特征和活动)。在这种情况下,空间-时间数据结构401可能不是由实体跟踪数据结构400表示的树中的根节点(如椭圆402A和402B所示)。相反,可能存在多个空间-时间数据结构可以经由公共根节点进行互连。
然后,返回到图3,可以针对至少临时在物理空间(例如,物理空间201)内的多个物理实体(例如,物理实体210)中的每个执行框310A的内容。此外,框310B的内容被示出为嵌套在框310A内,并且表示其内容可以针对给定物理实体在多次中的每一次执行。通过执行方法300,可以创建和增长复杂实体跟踪数据结构400,从而记录一次或多次在该位置内的物理实体的感测特征。此外,实体跟踪数据结构400还可能用于访问导致识别出某些感测特征(或特征变化)的感测信号。
针对在特定时间在给位置的特定物理实体,由一个或多个传感器感测物理实体(动作311)。换言之,由一个或多个传感器接收从物理实体发射、受其影响(例如,经由衍射、频移、回波等)、和/或从其反射的一个或多个物理信号。参考图1,假定物理实体211具有在特定时间由传感器221和222两者感测的一个或多个特征。
此时可以进入一个安全性方面。识别组件230可以具有安全组件231,根据特定设置,安全组件231可以拒绝记录与特定物理实体相关联的感测特征、特定类型的感测特征、和/或从特定时间生成的传感器信号感测到的特征、或其组合。例如,识别组件230可能不会记录该位置内的任何人的感测特征。作为更细粒度的示例,识别组件230可能不会记录一组人的感测特征,其中这些感测特征与人的身份或性别相关,并且这些感测特征由在特定时间框架生成的传感器信号产生。关于该安全性的更多内容将在下面关于图6再次描述。
如果允许,则在与物理实体相对应的实体数据结构内表示感测到物理实体的特定时间的至少近似,并且这与空间-时间数据结构计算相关联(动作312)。例如,参考图4,实体数据结构410A可以对应于物理实体211并且与空间-时间数据结构401计算相关联(如线430A所示)。在本说明书和权利要求书中,如果计算系统通过任何方式能够检测两个节点之间的关联,则数据结构的节点与数据结构的另一节点“计算相关联”。例如,指针的使用是一种用于计算相关联的机制。数据结构的节点还可以通过被包括在数据结构的其他节点内并且通过被计算系统识别为关联的任何其他机制来计算相关联。
时间数据411表示在实体数据结构410A内感测到物理实体的时间的至少近似(至少在框310B的内容的迭代时)。时间可以是真实时间(例如,相对于原子钟表示的),或者可以是人工时间。例如,人工时间可以是从真实时间的偏移和/或以与真实时间不同的方式表达的时间(例如,自千禧年的最后一个轮回以来的秒数或分钟数)。人工时间也可以是逻辑时间,诸如由在每次感测时递增的单调递增数字表示的时间。
此外,基于在特定时间对特定物理实体的感测(在动作311),环境在特定时间感测特定物理实体以其存在的特定物理实体的至少一个物理特征(并且可能是多个物理特征)(动作313)。例如,参考图2,识别组件230可以基于从传感器221和222接收的信号来感测物理实体211的至少一个物理特征(例如,如箭头229所示)。
然后,以与特定时间的至少近似计算相关联的方式,在实体数据结构中表示特定物理实体的至少一个感测物理特征(动作314)。例如,在图2中,感测特征数据被提供(如箭头239所示)给感测特征存储库240。在一些实施例中,该感测特征数据可以与特定时间的至少近似一起提供,以便以基本上一个动作修改实体跟踪数据结构400。换言之,可以在基本上相同的时间执行动作312和动作314以减少对感测特征存储库240的写入操作。
此外,如果允许,则以与感测特征计算机相关联的方式记录识别组件依赖于其来感测感测特征的(多个)传感器信号(动作315)。例如,感测特征数据241中的感测特征(例如,在时空数据结构401中)可以与存储在感测信号数据242中的这样的(多个)传感器信号计算相关联。
参考图4,第一实体数据结构现在具有与时间411计算相关联的感测特征数据421。在该示例中,感测特征数据421包括物理实体的两个感测物理特征421A和421B。然而,省略号421C表示可以存在物理实体的任何数目的感测特征被存储为实体数据结构401内的感测特征数据421的一部分。例如,可以存在单个感测特征、或无数感测特征、或在任何特定时间检测到的任何给定物理实体之间的任何数目的感测特征。
在一些情况下,感测特征可以与其他特征相关联。例如,如果物理实体是人,则该特征可以是该人的姓名。具体标识的人可能基于未在实体数据结构内表示的特征而具有已知特性。例如,该人可能在组织内具有某个等级或职位,具有某种训练,具有某种高度等等。当感测到特定特征(例如,姓名)时,实体数据结构可以通过指向该物理实体的附加特征(例如,等级、位置、训练、高度)来扩展,以便进一步扩展查询和/或对数据结构的其他计算的丰富度。
感测特征数据还可以具有与每个感测特征相关联的置信水平,该置信水平表示物理实体在特定时间410A确实具有感测特征的估计概率。在该示例中,置信水平421a与感测特征421A相关联,并且表示物理实体211确实具有感测特征421A的置信度。同样,置信水平421b与感测特征421B相关联,并且表示物理实体211确实具有感测特征421B的置信度。椭圆421c再次表示可以存在针对任何数目的物理特征而表达的置信水平。此外,可以存在其中没有表达置信水平的一些物理特征(例如,在确定的情况下或者在测量感测物理特征的置信度不重要或不合适的情况下)。
感测特征数据还可以具有与由识别组件用来感测该置信水平的感测特征的(多个)传感器信号的计算相关联(例如,指针)。例如,在图4中,(多个)传感器信号421Aa与感测特征421A计算相关联,并且表示在时间411用于感测感测特征421A的(多个)传感器信号。同样,(多个)传感器信号421Bb与感测特征421B计算相关联,并且表示在时间411用于感测感测特征421B的(多个)传感器信号。省略号421Cc再次表示可以存在任何数目的物理特征的计算关联。
识别组件230的安全组件231还可以在决定是否记录用于在特定时间感测特定特征的(多个)传感器信号时运用安全性。因此,安全组件231可以在以下方面运用安全性:1)确定是否记录感测到特定特征,2)确定是否记录与特定物理实体相关联的特征,3)确定是否记录在特定时间感测到的特征,4)确定是否记录(多个)传感器信号,并且如果是,则确定记录哪些信号作为感测特征的证据,等等。
作为示例,假定被跟踪的位置是房间。现在假定图像传感器(例如,相机)感测房间内的某些东西。感测特征的一个示例是,“事物”是人。感测特征的另一示例是,“事物”是特定姓名的人。关于“事物”是人可能存在100%的置信度,但关于人是特定身份的人只有20%的置信度。在这种情况下,感测特征集包括作为另一特征的更具体类型的一个特征。此外,来自相机的图像数据可以由特定时间的特定物理实体的感测特征的记录来指向。
另一示例特征是,物理实体仅存在于该位置内,或者位于该位置内的特定位置处。另一示例是,这是自特定时间(例如,近期,或甚至永远)以来物理实体的首次出现。特征的另一示例是,物品是无生命的(例如,具有99%的确定性),是工具(例如,具有80%的确定性),以及是锤子(例如,具有60%的确定性)。另一示例特征是,物理实体不再存在(例如,不存在)于该位置,或者具有特定姿势,以某种方式定向,或者与该位置内的另一物理实体具有位置关系(例如,“在桌子上”或“坐在椅子#5上”)。
在任何情况下,可以从任何位置内的物理实体的数目和类型感测的特征的数目和类型是无数的。而且,如前所述,如框310B所示,针对任何给定物理实体,可以可能多次执行框310B内的动作。例如,物理实体211可以被传感器221和222中的一个或两个再次检测到。参考图4,该检测导致在实体数据结构410内表示下一检测的时间(或是近似)。例如,时间412也在实体数据结构内表示。此外,感测特征422(例如,包括可能的感测特征422A和422B——椭圆422C再次表示灵活性)与第二时间412计算相关联。此外,这些感测特征也可以具有相关联的置信水平(例如,422a、422b,椭圆422c)。同样,这些感测特征也可以具有相关联的传感器信号(例如,422Aa、422Bb,椭圆422Cc)。
在第二时间感测到的感测特征可以与在第一时间感测到的感测特征相同或不同。置信水平可以会随时间改变。例如,假定以90%的置信度经由图像在大房间的一侧在时间#1检测到人,并且人以30%的置信度被具体感测为John Doe。现在,在0.1秒之后的时间#2,John Doe以100%的置信度被感测为在房间的另一部分在50英尺外,并且仍然有人在JohnDoe被推测为在时间1所在的同一位置。由于人不会在十分之一秒内(至少在办公室环境中)行进50英尺,现在可以得出结论,在时间1检测到的人根本不是John Doe。因此,针对时间#1的人是John Doe的置信度降低到零。
返回到图2,椭圆413和423表示在该位置内可以检测到物理实体的次数没有限制。随着进行后续检测,可以更多地了解物理实体,因此可以适当地添加(或移除)感测特征,并且对每个感测特征的置信水平进行相应调节。
现在移动到框310B之外,但是保留在框310A内,针对任何给定物理实体,可以基于不同时间的特定物理实体的(多个)感测特征的比较(动作321)来感测特定实体的特征变化(动作322)。该感测变化可以由识别组件230或计算组件250执行。如果需要,也可以记录这些感测变化(动作323)。例如,感测变化可以按照与特定时间计算相关联或与特定时间不计算相关联的方式记录在实体数据结构410A中。可以使用每次证明感测特征的传感器信号来重构证明特征变化的传感器信号。
例如,基于第一时间的感测特征是该位置内的物理实体的存在,并且基于第二时间的第二特征是该位置内的物理实体的不存在,可以得出结论:物理实体退出了物理空间。相反,基于第一时间的感测特征是该位置的物理实体的不存在,并且第二时间的第二特征是该位置内的物理实体的存在,可以得出结论:物理实体已经进入该位置。在某些情况下,在物理实体首次被检测为存在于物理空间中之前,可能不会寻找物理空间中的物理实体的不存在。
现在参考框310A,可以随时间对多个实体执行对物理实体的(多个)特征的这种跟踪。例如,可以对物理空间201内的每个物理实体211、212、213或214或者对进入或离开物理空间201的其他物理实体执行框310A的内容。参考图4,空间-时间数据结构401还与第二实体数据结构410B(可能与图2的第二物理实体212相关联)、第三实体数据结构410C(可能与图2的第三物理实体213相关联)、第四实体数据结构410D(可能与图2的第四物理实体214相关联)计算相关联(如线430B、430C和430D所示)。
空间-时间数据结构401还可以包括定义条件和动作的一个或多个触发器。当满足条件时,将发生相应的操作。触发器可以存储在空间-时间数据结构中的任何位置。例如,如果条件是/或动作是关于特定实体数据结构,则触发器可以存储在相应的实体数据结构中。如果条件和/或动作是关于特定实体数据结构的特定特征,则触发器可以存储在相应的特征数据结构中。
省略号410E表示实体数据结构的数目可以改变。例如,如果跟踪数据相对于物理空间内的物理实体永久保存,则每次在该位置内检测到新的物理实体时可以添加附加的实体数据结构,并且可以在每次在物理空间内检测到物理实体时增强任何给定实体数据结构。然而,回想一下,可以执行垃圾收集(例如,通过清理组件260)以保持实体跟踪数据结构400不会变得太大而不能被适当地编辑、存储和/或导航。
在框310A之外,可以基于相关联的实体数据结构的比较(动作331)来感测(动作332)不同物理实体之间的物理关系。这些物理关系同样可以记录在实体跟踪数据结构401中(动作333),可能在具有感测到的物理关系的相关联的实体数据结构内,和/或可能与物理实体被感测为具有该关系的时间相关联。例如,通过随时间分析不同物理实体的实体数据结构,可以确定在特定时间,物理实体可能隐藏在另一物理实体后面,或者物理实体可能模糊了对另一物理实体的感测,或者已经连接两个物理实体或已经分离物理实体以创建多个物理实体。可以使用在适当时间和针对每个物理实体证明感测特征的传感器信号来重构证明物理实体关系的传感器信号。
现在,特征数据存储器240可以用作强大的存储器,在该存储器上在物理空间内随时间计算复杂功能和对物理实体的表示的查询。这种计算和查询可以由计算组件250执行。这实现了多个有用的实施例,并且实际上引入了本文中被称为“环境计算”的全新的计算形式。在具有传感器的物理空间内,就好像空气本身可以用于计算和感测物理世界的状态。就好像现在已经为该物理空间创建了一个水晶球,从中可以查询和/或计算关于该位置及其历史的很多东西。
作为示例,用户现在可以查询对象现在是否在物理空间中,或者对象在特定时间是否在物理空间内。用户还可以查询具有特定特征(例如,公司内的排名或位置)的哪个人现在正在该对象附近,并且与该人通信以将该对象带给用户。用户可以查询物理实体之间的关系。例如,用户可以查询谁拥有对象。用户可以询问对象的状态,是否隐藏,以及其他对象是否遮挡了该对象的视图。用户可以查询物理实体何时首次出现在物理空间内,何时退出,等等。用户还可以查询灯何时关闭,系统何时确定物理实体的一个或多个特征。用户还可以搜索对象的(多个)特征。用户还可以查询该位置内发生的活动。用户可以计算特定类型的物理实体在该位置内的平均时间,预测物理实体在将来某个时间的位置,等等。因此,可以在具有传感器的物理空间上执行丰富的计算和查询。
如前所述,计算机可导航图形可以具有与感测特征相关联的信号段。图5示出了用于有效地绘出感兴趣的信号段的方法500的流程图。首先,计算系统导航感测特征的可导航图形以达到特定感测特征(动作501)。例如,该导航可以自动或响应于用户输入来执行。导航可以是计算的结果,或者可以简单地涉及标识感兴趣的感测特征。作为另一示例,导航可以是用户查询的结果。在一些实施例中,计算或查询可以导致导航到多个感测特征。作为示例,假定计算系统导航到图2中的感测特征222A。
计算系统然后使用特定感测特征与相关联的传感器信号之间的计算机关联来导航到与特定感测特征计算机相关联的感测信号(动作502)。例如,在图2中,在感测特征为感测特征222A的情况下,计算机关联用于导航到信号段222Aa。
最后,然后可以在适当的输出设备上绘出信号段(动作503)。例如,如果计算系统是图1的计算系统100,则适当的输出设备可以是输出机制112A中的一个或多个。例如,可以使用扬声器来绘出音频信号,并且可以使用显示器来绘出视觉数据。在导航到(多个)感测信号之后,可能发生多种事情。用户可以播放特定的信号段,或者可以从有助于该特征的多个信号段中选择。可以从多个信号段合成视图。
通过对物理世界执行计算,实现了新类型的环境计算。就好像计算机在非常环境的环境中可用,在空气本身中实现,并且能够对在任何点处与空气接触的物理实体执行计算。在工作场所,使用这种环境计算可以大大提高生产率。例如,用户可以快速找到错放的工具,或者能够与靠近工具的对等方通信,以便用户可以要求该对等方抓取该工具并且将其带给用户。此外,除了环境计算之外,人类可以在特定感兴趣时间查看用于感测特定感兴趣物理实体的感兴趣特征的(多个)传感器信号。然而,由于负责任地使用环境计算而提高物理生产力的场景的数目是无限的。
现在已经关于图2至图5描述了环境计算的原理,将关于图6描述可以在这种环境计算的上下文中执行的安全机制。图6示出了用于控制对由物理空间中的一个或多个传感器感测的信息的创建或访问的方法600的流程图。该方法包括创建(动作601)随时间在物理空间中感测的感测物理实体的特征的计算机可导航图形。本文中描述的原理不限于这种计算机可导航图形的精确结构。已经关于图2至图4描述了示例结构及其创建。
方法600还包括基于一个或多个标准来限制对计算机可导航图形的节点的创建或访问(动作602)。因此,对计算机可导航图形施加了安全性。箭头603和604表示,创建图并且限制对其节点的创建/访问的过程可以是连续过程。该图形可以连续地将节点添加到图形(并且可能从图形移除)。此外,只要存在创建节点的可能性,就可以考虑创建的限制。可以在创建图形的节点时或在其之后的任何点处确定访问的限制。例如,限制的示例可以包括感测物理实体的预期身份、感测物理实体的感测特征等。
在确定是否授权对计算机可导航图形的节点的访问时,每个节点可以存在访问标准。这种访问标准可以是显式的或隐式的。也就是说,如果针对要访问的节点没有明确的访问标准,则可以应用默认的一组访问标准。可以按照任何方式组织任何给定节点的访问标准。例如,在一个实施例中,节点的访问标准可以与计算机可导航图形中的节点一起存储。
访问限制还可以包括基于所请求的访问类型的限制。例如,计算访问表示,不直接访问节点,而是在计算中使用节点。可以限制直接访问以读取节点的内容,而可以允许不报告节点的确切内容的计算访问。
访问限制还可以基于所访问的节点的类型。例如,对计算机可导航图形的特定实体数据结构节点的访问可能存在限制。例如,如果该特定实体数据结构节点表示物理空间中的特定人的检测,则可能拒绝访问。对计算机可导航图形的特定信号段节点的访问可能存在限制。作为示例,也许可以确定某人在给定时间在某个位置,但是不能在该位置查看该人的视频记录。访问限制也可以基于谁是访问的请求者。
在确定是否限制计算机可导航图形的特定感测特征节点的创建时,可以考虑各种标准。例如,关于计算机可导航图形的特定信号段节点的创建可能存在限制。
图7示出了循环流程700,其示出了除了在物理空间中创建感测特征的计算机可导航图形之外(动作701),还可以修剪计算机可导航图形(动作702)。这些动作甚至可以同时且连续地发生(如箭头703和704所示),从而将感测特征的计算机可导航图形保持在可管理大小。本文中已经有关于如何创建计算机可导航图形的重要描述(表示为动作701)。
现在,该描述将集中于如何修剪计算机可导航图形以移除计算机可导航图形的一个或多个节点(动作702)。计算机可导航图形的任何节点都可以被移除。例如,可以在特定时间或一组时间内移除物理实体数据结构的感测特征。还可以一直移除物理实体数据结构的感测特征。可以在任何给定时间或任何一组时间移除物理实体数据结构的多于一个感测特征。此外,在某些情况下可以完全移除物理实体数据结构。
例如,当物理图形表示根据物理定律不可能的事物时,可以发生节点的移除。例如,给定对象不能同时在两个地方,在这种行进不可行或不可能的环境中,该对象也不能在短时间内移动很长的距离。因此,如果在一个位置处以绝对确定性跟踪物理实体,则可以删除以较低置信度表示同一物理实体处于不一致位置的任何物理实体数据结构。
当获取关于物理实体的感测特征的更多置信度时,也可以发生节点的移除。例如,如果以100%的确定性确定位置内的物理实体的感测特征,则可以更新该物理实体的感测特征的确定性级别以对所有先前时间读取100%。此外,已经被认识到不适用于物理实体的感测特征(即,置信水平已经降低到零或可忽略不计),可以针对该物理实体移除感测特征。
此外,计算机可导航图形中的一些信息可能过于陈旧而无法使用。例如,如果在物理空间中没有观察到物理实体很长一段时间以使得物理实体的先前识别不再相关,则可以移除整个物理实体数据结构。此外,尽管物理实体数据结构仍然反映更近期的检测,但是可以移除已经变为过时的物理实体的检测。因此,可以经由内在分析和/或外在信息来执行计算机可导航图形的清理(或修剪)。这种修剪本质上通过移除质量较差的信息并且释放空间以存储更多相关信息改善了计算机可导航图形中表示的信息的质量。
因此,本文中描述的原理实现了物理世界的计算机可导航图形。该图形可以是可搜索和可查询的,从而允许对真实世界执行搜索和查询以及其他计算。在这样的环境中可以进一步施加安全性。最后,可以通过清理和修剪将图形保持在可管理大小。因此,实现了计算的新范例。
上述物理空间的计算机可导航图形能够实现各种各样的应用和技术成果。现在将描述两个这样的应用。第一种是现实代理,现实代理放大用户观察、推理并且可能也在真实世界中行动的能力。第二种是允许用户表达可能在真实世界中发生的(多个)物理条件的系统,以便如果满足(多个)物理条件,则用户可能影响未来。在任何一种情况下,可以采用自然语言解释来向现实代理发出命令,和/或表达用于在将来采取动作的(多个)物理条件。
图8示出了用于代理(本文中也被称为“现实代理”)基于真实世界观察来采取动作的方法800的流程图。图9示出了用于代理910的示例操作环境900。因为代理910可以执行图8的方法800,所以将频繁参考图9的环境900来描述图8。例如,代理可以是在计算系统上运行的组件。
根据图8的方法800,代理解释从用户接收的一个或多个命令(动作801)。例如,在图9中,用户901发出命令,如箭头902和903所示。这些命令可以是自然语言命令(例如,用户说出命令)。在这种情况下,自然语言命令由箭头902表示,并且由代理910通过自然语言引擎911接收。本文中描述的原理不限于自然语言命令解释如何发生。然而,自然语言命令902由自然语言引擎911解释为计算机可读命令(如箭头903所示)。
根据图8的方法800,代理通过制定针对物理图形的至少一个查询来响应于(多个)命令(动作802)。例如,在图9中,查询生成器912可以生成要针对物理图形920发出的多个查询。物理图形920表示物理空间内的一个或多个物理实体的状态并且由多个传感器观察。上面已经关于图1至图4描述了这种物理图形920的更具体示例。
根据图8的方法800,代理然后发出针对(或向)物理图形的一个或多个查询(动作803)。例如,在图9中,查询生成器912向物理图形920发出查询,如箭头904所示。当然,代理也从物理图形920接收对查询的响应(动作804)。提交查询(动作803)和接收响应(动作804)的过程不需要在一个简单的请求和响应中发生,而是可以表示与物理图形920的复杂交互。例如,对一个查询的响应可以用于生成一个或多个另外的查询。在任何情况下,响应由代理在动作标识符913处接收。
根据图8的方法800,代理然后标识要响应于查询响应而采取的(多个)动作(动作805)。这样的动作可以包括虚拟动作——诸如向用户通知从用户接收的命令中的所请求的信息,向用户绘出信号段,在物理世界上进行计算以及向用户呈现结果,与其他(多个)人和/或其代理通信,等等。然而,这样的动作还可以包括物理动作。
根据图8的方法800,代理然后可以使得(多个)动作被发起(动作806)。例如,在图9中,动作标识符913发信号通知(如箭头906所示)动作代理914采取动作。动作代理914可以执行虚拟动作(其示例在前一段中提供)或者可以实际执行物理动作,从而影响物理工作。
作为示例,假定用户向现实代理发出命令以询问某个工作场所是否有任何溢出,如果是,则封锁该区域。现实代理可以查询该工作场所的物理图形以标识泄漏,然后使得无人机或机器人被派遣到该区域以防止个人走进该区域。
物理动作可能不是立即的,但可以包括设置用于采取一些未来动作的一些物理条件。作为示例,这样的物理条件可以包括至少一个标识物理实体在特定位置中的物理存在或不存在。替代地或另外地,这样的物理条件可以包括物理活动的发生或不存在。替代地或另外地,这样的物理条件可以包括两个或更多个物理实体之间的物理关系的存在或不存在。
图10示出了用于设置用于执行一个或多个动作的一个或多个物理条件的方法1000的流程图。方法1000包括设置物理条件(动作1001)。该物理条件可以被设置为现实代理对命令采取某些动作的一部分(例如,在图8的动作806中经由图9的动作引擎914)。然而,替代地,可以通过来自用户的直接命令来执行物理条件的设置。同样,这样的命令甚至可以是由自然语言引擎解释的自然语言命令。因此,现实代理910还可以用于直接设置用于采取一些未来动作的物理条件。
系统(例如,可能是现实代理910)还标识在发生物理条件时要采取的动作(动作1002)。示出了动作1002而没有与物理条件的设置的时间关系(动作1001),因为这种动作的标识可能在物理条件发生之前发生,和/或可以响应于物理条件的发生而做出。因此,动作1002可以早在动作1001之前发生,或者可以在检测到物理条件之后发生(判定框1004中的“是”),或者两者。要采取的动作可以由系统确定,或者可以由用户表达。
当设置了物理条件时(动作1001),系统监测物理条件的发生或可能即将发生(动作1003)。如果检测到物理条件的发生或即将发生(判定框1004中的“是”),则采取动作(动作1005)。这样的动作可以是虚拟动作——诸如警告一个或多个个体或系统物理条件已经发生或即将发生,与一个或多个个体就物理条件进行通信,呈现信号段或者其他虚拟动作。这些动作也可以是物理动作,诸如(出于看起来更有可能的物理条件的原因)避免(或鼓励)物理条件发生。这些动作可能包括派遣机器人或无人机来解决物理条件的发生。在溢出示例中,用户可以指示现实代理观察溢出,如果发生溢出,则采取特定物理动作以防止工人进入该区域,通知安全团队,等等。
因此,本文中描述的原理提供了一种通过评估真实世界的一部分的图形来响应于用户发出的查询和命令的现实代理。在一些实施例中,现实代理甚至可以响应于用户发出的查询和命令来影响真实世界。代理成为真实世界中用户的放大。代理具有更多的能力来观察用户经常可以获取的真实世界信息和活动。代理具有更多的能力来记忆和推理这些真实世界信息。最后,代理可能具有更多的能力来基于来自真实世界的信息和推理来在真实世界中进行物理动作。此外,本文中描述的原理提供了一种机制,用于关于任何物理条件的发生来观察真实世界,并且响应于物理条件来执行任何动作(虚拟或物理)。因此,通过表达用于采取动作的真实世界条件,用户变为有权影响真实世界的未来。
在不脱离本发明的精神或基本特征的情况下,可以按照其他具体形式来实施发明。所描述的实施例在所有方面仅被认为是说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是由前面的描述来指示。在权利要求的等同物的含义和范围内的所有变化都将被包含在其范围内。
Claims (10)
1.一种计算系统,包括:
一个或多个处理器;
一个或多个计算机可读介质,其上具有计算机可执行指令,所述计算机可执行指令被构造以使得在由所述一个或多个处理器执行时,使得所述计算系统发起和/或操作代理,所述代理被配置为进行以下:
解释来自用户的一个或多个命令;以及
通过执行以下来响应于所述一个或多个命令中的至少一个命令:
制定针对物理图形的至少一个查询,所述物理图形表示物理空间内的一个或多个物理实体的状态并且由多个传感器观察;
发出针对所述物理图形的所述至少一个查询;以及
标识要响应于对针对所述物理图形的所述至少一个查询的一个或多个响应而采取的动作。
2.根据权利要求1所述的计算系统,所述代理包括:
自然语言引擎,来自所述用户的所述一个或多个命令包括自然语言命令。
3.根据权利要求1所述的计算系统,所述代理包括:
物理动作引擎,被配置为使得一个或多个物理动作被执行,标识的所述动作包括物理动作。
4.根据权利要求1所述的计算系统,标识的所述动作包括在所述物理图形中创建触发器,从而使得如果状态在所述物理图形中被实现,则动作被触发。
5.根据权利要求1所述的计算系统,标识的所述动作是向所述用户通知在来自所述用户的所述一个或多个命令中的所述至少一个命令中被请求的信息。
6.根据权利要求1所述的计算系统,标识的所述动作包括向所述用户绘出信号段。
7.根据权利要求1所述的计算系统,标识的所述动作是与一个或多个其他人通信。
8.根据权利要求1所述的计算系统,标识的所述动作包括设置物理条件,以及针对所述物理条件的发生继续对所述物理图形的监测。
9.根据权利要求1所述的计算系统,标识所述动作包括针对物理条件的潜在发生对所述物理图形的监测,以及采取物理动作以避免或鼓励所述物理条件。
10.一种用于代理操作的方法,所述方法包括:
由所述代理解释来自用户的一个或多个命令;以及
由所述代理通过执行以下来响应于所述一个或多个命令中的至少一个命令:
制定针对物理图形的至少一个查询,所述物理图形表示物理空间内的一个或多个物理实体的状态并且由多个传感器观察;
发出针对所述物理图形的所述至少一个查询;以及
标识要响应于对针对所述物理图形的所述至少一个查询的一个或多个响应而采取的动作。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762447790P | 2017-01-18 | 2017-01-18 | |
US62/447,790 | 2017-01-18 | ||
US15/436,686 | 2017-02-17 | ||
US15/436,686 US20180203881A1 (en) | 2017-01-18 | 2017-02-17 | Taking action based on physical graph |
PCT/US2018/013232 WO2018136280A1 (en) | 2017-01-18 | 2018-01-11 | Taking action based on physical graph |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110192209A true CN110192209A (zh) | 2019-08-30 |
Family
ID=62841410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880007387.XA Withdrawn CN110192209A (zh) | 2017-01-18 | 2018-01-11 | 基于物理图形来采取动作 |
Country Status (16)
Country | Link |
---|---|
US (1) | US20180203881A1 (zh) |
EP (1) | EP3571640A1 (zh) |
JP (1) | JP2020505691A (zh) |
KR (1) | KR20190107029A (zh) |
CN (1) | CN110192209A (zh) |
AU (1) | AU2018210202A1 (zh) |
BR (1) | BR112019012808A2 (zh) |
CA (1) | CA3046332A1 (zh) |
CL (1) | CL2019001929A1 (zh) |
CO (1) | CO2019007636A2 (zh) |
IL (1) | IL267900A (zh) |
MX (1) | MX2019008497A (zh) |
PH (1) | PH12019550122A1 (zh) |
RU (1) | RU2019125863A (zh) |
SG (1) | SG11201905466YA (zh) |
WO (1) | WO2018136280A1 (zh) |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9230560B2 (en) * | 2012-10-08 | 2016-01-05 | Nant Holdings Ip, Llc | Smart home automation systems and methods |
US9871865B2 (en) * | 2013-07-11 | 2018-01-16 | Neura, Inc. | Physical environment profiling through internet of things integration platform |
JP6048590B2 (ja) * | 2013-10-21 | 2016-12-21 | 株式会社島津製作所 | 包括的2次元クロマトグラフ用データ処理装置 |
US9594109B2 (en) * | 2014-02-17 | 2017-03-14 | Scadata, Inc. | Monitoring system for electrical equipment failure and method |
US9542648B2 (en) * | 2014-04-10 | 2017-01-10 | Palo Alto Research Center Incorporated | Intelligent contextually aware digital assistants |
WO2015181144A1 (en) * | 2014-05-26 | 2015-12-03 | Agt International Gmbh | System and method for registering sensors used in monitoring-systems |
WO2015195765A1 (en) * | 2014-06-17 | 2015-12-23 | Nant Vision, Inc. | Activity recognition systems and methods |
US10592093B2 (en) * | 2014-10-09 | 2020-03-17 | Splunk Inc. | Anomaly detection |
US10095834B2 (en) * | 2015-05-08 | 2018-10-09 | YC Wellness, Inc. | Integration platform and application interfaces for remote data management and security |
US11202172B2 (en) * | 2015-10-29 | 2021-12-14 | Stratacache Limited | System and method for managing indoor positioning data |
JP6365554B2 (ja) * | 2016-01-14 | 2018-08-01 | マツダ株式会社 | 運転支援装置 |
US10313382B2 (en) * | 2016-03-29 | 2019-06-04 | The Mitre Corporation | System and method for visualizing and analyzing cyber-attacks using a graph model |
-
2017
- 2017-02-17 US US15/436,686 patent/US20180203881A1/en not_active Abandoned
-
2018
- 2018-01-11 CA CA3046332A patent/CA3046332A1/en not_active Abandoned
- 2018-01-11 BR BR112019012808A patent/BR112019012808A2/pt not_active Application Discontinuation
- 2018-01-11 MX MX2019008497A patent/MX2019008497A/es unknown
- 2018-01-11 WO PCT/US2018/013232 patent/WO2018136280A1/en unknown
- 2018-01-11 JP JP2019538596A patent/JP2020505691A/ja active Pending
- 2018-01-11 RU RU2019125863A patent/RU2019125863A/ru not_active Application Discontinuation
- 2018-01-11 SG SG11201905466YA patent/SG11201905466YA/en unknown
- 2018-01-11 CN CN201880007387.XA patent/CN110192209A/zh not_active Withdrawn
- 2018-01-11 KR KR1020197021121A patent/KR20190107029A/ko unknown
- 2018-01-11 EP EP18701906.2A patent/EP3571640A1/en not_active Withdrawn
- 2018-01-11 AU AU2018210202A patent/AU2018210202A1/en not_active Abandoned
-
2019
- 2019-07-02 PH PH12019550122A patent/PH12019550122A1/en unknown
- 2019-07-07 IL IL267900A patent/IL267900A/en unknown
- 2019-07-10 CL CL2019001929A patent/CL2019001929A1/es unknown
- 2019-07-16 CO CONC2019/0007636A patent/CO2019007636A2/es unknown
Also Published As
Publication number | Publication date |
---|---|
US20180203881A1 (en) | 2018-07-19 |
WO2018136280A1 (en) | 2018-07-26 |
BR112019012808A2 (pt) | 2019-12-03 |
CA3046332A1 (en) | 2018-07-26 |
JP2020505691A (ja) | 2020-02-20 |
IL267900A (en) | 2019-09-26 |
CL2019001929A1 (es) | 2019-11-29 |
EP3571640A1 (en) | 2019-11-27 |
SG11201905466YA (en) | 2019-08-27 |
MX2019008497A (es) | 2019-09-10 |
PH12019550122A1 (en) | 2020-02-10 |
RU2019125863A (ru) | 2021-02-19 |
AU2018210202A1 (en) | 2019-07-11 |
KR20190107029A (ko) | 2019-09-18 |
CO2019007636A2 (es) | 2019-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110178147A (zh) | 自动路由到事件端点 | |
US10437884B2 (en) | Navigation of computer-navigable physical feature graph | |
CN110178145A (zh) | 支持感测特征的信号段的组织 | |
JP2020518841A (ja) | 自動化されたアクティビティ−時間訓練 | |
CN110178148A (zh) | 物理实体的计算机辅助跟踪 | |
CN110199299A (zh) | 基于物理条件采取动作 | |
CN110192208B (zh) | 共享物理图形的信号片段 | |
CN110192209A (zh) | 基于物理图形来采取动作 | |
CN110192202A (zh) | 信号段的自动叙述 | |
CN110214327A (zh) | 控制物理感测特征的创建/访问 | |
CN110177661A (zh) | 自动移动编排 | |
CN110199272A (zh) | 计算机可导航物理特征图的清洁 |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40008190 Country of ref document: HK |
|
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190830 |
|
WW01 | Invention patent application withdrawn after publication |