首页> 中国专利> 基于人类-机器人交互来调节机器人行为

基于人类-机器人交互来调节机器人行为

摘要

一种用于人类-机器人交互的机器人包括计算机可读存储器,该计算机可读存储器包括一模型,该模型相对于任务的成功完成(例如,分发传单)而适合于观察到的数据,其中这样观察到的数据中的至少一些关于可被机器人控制的条件,诸如机器人的位置或机器人和人类之间的距离。理想地要被机器人执行的任务是使得人类来与机器人交互。该模型在机器人在线时被更新,使得机器人的行为随着时间来调节以增加机器人将成功完成任务的概率。

著录项

  • 公开/公告号CN105144202A

    专利类型发明专利

  • 公开/公告日2015-12-09

    原文格式PDF

  • 申请/专利权人 微软技术许可有限责任公司;

    申请/专利号CN201480012191.1

  • 申请日2014-02-28

  • 分类号G06N3/00;G06Q30/02;

  • 代理机构上海专利商标事务所有限公司;

  • 代理人胡利鸣

  • 地址 美国华盛顿州

  • 入库时间 2023-12-18 12:45:22

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-10-24

    授权

    授权

  • 2016-01-06

    实质审查的生效 IPC(主分类):G06N3/00 申请日:20140228

    实质审查的生效

  • 2015-12-09

    公开

    公开

说明书

背景

如本文中使用的术语,机器人是包括致使该机器人独立地且无需来自人类 的协助地执行功能的计算机硬件和软件的机电机器。当前市场上可购得的示例 性机器人包括机器人吸尘器和割草机。例如,传统的市场上可购得的机器人吸 尘器包括计算机可执行指令,当被机器人吸尘器的处理器执行时,该计算机可 执行指令致使机器人吸尘器基于从机器人吸尘器的传感器接收到的输入来自 动地对特定区域(例如,一房间)进行吸尘。传统的市场上可购得的机器人割 草机被配置有计算机可执行指令,当被机器人割草机的处理器执行时,该计算 机可执行指令致使这样的机器人割草机自动地且无需人类干预地来收割特定 区域(例如,屋主的后院)中的草。

随着时间推移,可以预期被配置来执行指定任务的移动机器人将会相对常 见。当前,在工业和家庭环境两者中,市场上可购得的机器人被硬编码以响应 于接收传感器输入来执行某些动作。例如,如果机器人割草机上的传感器在其 路径中检测到障碍(诸如人类),则由开发者编写的针对该机器人割草机的计 算机可执行代码致使该机器人割草机停止和/或改变方向。然而,传统的机器人 设备对于处理更为复杂的场景而言是装备不良的。

概述

以下是在本文详细描述的主题的简要的发明内容。本发明内容不旨在是关 于权利要求的范围的限制。

本文描述了关于自动地调节一环境中的移动机器人设备(机器人)的行为 的各种技术,其中移动机器人设备基于环境中感测到的条件以及相对于人类的 任务已经被成功地完成还是没有被成功地完成来操作。由此,机器人的行为被 调节来增加机器人将相对于随后进入机器人的环境的人类成功地完成任务的 概率。在一示例性实施例中,机器人可习得各技术,随着时间的推移,在给定 环境中变化的条件的情况下,各技术增加任务将被机器人成功完成的概率。

更具体地,可以预期,移动机器人设备在社会的不同部分中的使用将在不 久的将来相对常见。这种从受控的环境(例如,工厂)到其中人们不断出现和 四处移动的未被限制的环境(例如,家、公共场所、医院等)的改变将提升对 于机器人以“社会上可接受的”方式来表现的需要以使得人类与这样的机器人进 行交互。这种对于社会上可接受的行为的需要可跨多个领域(例如,“我现在能 发出声音吗?”“我能移动多快而不使得人类感到不舒服?”“我能基于已知的 位置、行进的方向和这个人的行进的速率来在这个人前面穿过吗?”等)。

本文中描述的技术涉及学习框架,该学习框架允许机器人根据在机器人的 环境中先前观察到的人类行为来调节其行为。在一示例性实施例中,该框架基 于来自高斯回归过程(GRP)之上的强化学习的原理的应用。这种学习框架可 协助机器人针对每个机器人-人类交互来调节其行为以增加机器人将相对于相 应人类成功地完成预先定义的任务的概率。

例如,理想地被机器人相对于人类完成的任务可以是使得人类与机器人在 机器人的环境中进行交互。一示例性交互可以是人类接受来自机器人的特定材 料(例如,广告)。另一示例性交互可以是人类向移动机器人设备阐述某些语 音输入。又一示例性交互可以是人类通过机器人的键盘或姿势以及其他等的方 式来阐述某些其他想要的输入。机器人包括多个传感器,该多个传感器被配置 成输出代表环境的相应条件和/或机器人的条件的信号。机器人的条件可以在机 器人的控制下。例如,机器人的条件可包括机器人和人类之间的距离、移动机 器人以此靠近人类的角度、机器人的扬声器的音量、机器人输出的声音信号的 音调、机器人的速度和/或加速度等。环境的条件可以完全在机器人的控制之外, 并可包括例如,一天中的时间、温度、人类行走的速度、人类的大小、人类的 性别、人类的种族等。随着时间的推移,通过观察(在机器人的控制下以及在 机器人的控制之外两者的)条件并且通过查明预先定义的任务是否被成功地完 成,机器人(通过以上提到的学习框架)可调节其行为来提升任务将针对环境 中的后续人类(其中不同的条件被观察到)被成功完成的概率。例如,对于特 定环境,机器人可习得最优距离以相对于人类来针对一天中的特定时间和性别 来定位其自己,以最大化相对于该人类的任务将被成功地完成的概率。

以上概述呈现了简化概述,以便提供对本文讨论的系统和/或方法的某些方 面的基本理解。本概述并不是对本文所讨论的系统和/或方法的全面综述。并不 旨在标识关键/重要元素,也不描绘这样的系统和/或方法的范围。其唯一目的 是以简化形式呈现一些概念,作为稍后呈现的更详细说明的序言。

附图简述

图1示出在特定环境中与人类交互的示例性移动机器人设备。

图2示出示例性移动机器人设备。

图3示出可被包括在移动机器人设备的计算机可读存储器中的示例性计算 机可执行组件。

图4是示出用于使得移动机器人设备执行一动作的示例性方法的流程图, 该动作被习得来增加移动机器人设备将相对于人类成功地完成任务的概率。

图5是示出用于更新当尝试使得人类与移动计算设备交互时被移动机器人 设备使用的习得的模型的示例性方法的流程图。

图6是示例性计算系统。

详细描述

现在参考附图来描述与人类-机器人交互有关的各种技术,其中在附图中贯 穿始终使用相同的附图标记来引述相同的要素。在以下描述中,出于解释的目 的,提出了众多具体细节以提供对一个或多个方面的全面理解。然而,显然这 (些)方面可以在没有这些具体细节的情况下被实践。在其他实例中,以框图 形式示出公知的结构和设备以便于描述一个或多个方面。另外,要理解,被描 述为由特定系统组件执行的功能性可由多个组件执行。类似地,例如,一组件 可被配置成执行被描述为由多个组件执行的功能。

此外,术语“或”意指包括性“或”而非排斥性“或”。即,除非另有指定或从 上下文显而易见,否则短语“X采用A或B”意指任何自然的包括性排列。即, 短语“X采用A或B”藉由以下实例中任何实例得到满足:X采用A;X采用B; 或X采用A和B两者。另外,本申请和所附权利要求书中所使用的冠词“一” 和“某”一般应当被解释成表示“一个或多个”,除非另外声明或者可从上下文中 清楚看出是指单数形式。

此外,如本文所使用的,术语“组件”和“系统”旨在包含用使得在被处理器 执行时执行特定功能性的计算机可执行指令配置的计算机可读数据存储。计算 机可执行指令可包括例程、功能等等。还要理解组件或系统可以位于单个设备 上或跨若干设备分布。而且,此处所用的术语“示例性”旨在表示用作某些事物 的图示或示例,而不意图指示优选。

现在参考图1,示出了其中移动机器人设备102(机器人)尝试相对于人 类104完成预先定义的任务的环境100。例如,环境100可以是其中机器人102 和/或人类104相对不受限制的环境。这与其中机器人被使用的传统环境相反, 其中机器人被限制到特定区域,并且它们与人类的交互也被类似限制。图1中 所示的示例性环境100例如可以是公共环境,诸如商场、机场、运动场、竞技 场、公园、图书馆等。环境100还可以是相对私人的环境,诸如医院、营业场 所等。

机器人102包括多个传感器106,该多个传感器106被配置成输出指示关 于环境100和/或机器人102的相应条件的信号。该多个传感器106可包括例如, 时钟、温度传感器、深度传感器、摄像机、话筒、速度计、加速度计、陀螺仪、 定位传感器等。关于环境100的条件可包括一天中的时间、一星期中的一天、 温度、湿度、亮度、声学信号的音量、来自特定人类的语音的音量、对象在环 境100中的位置、人类104的大小、人类104的年纪、人类104的性别或种族、 人类104行进的方向、人类104行进的速度、人类104行进的加速度、人类104 的面部表情等。关于机器人102的条件包括但不限于包括,机器人102在环境 100中的位置、机器人102在环境100中相对于人类104的位置的位置、机器 人102的扬声器输出的音频的音量、机器人102发射的光的强度等。

在一个示例性实施例中,该多个传感器106可包括摄像机,并且关于环境 100和/或机器人102的条件可通过对由摄像机输出的视频信号的分析来查明。 可被包括在传感器106中的其他示例性传感器包括深度传感器、话筒、光传感 器、速度计、加速度计、定位传感器等。

机器人102包括与一处理器(未显示)通信的驱动系统108,该处理器向 这样的驱动系统108传送致使机器人102转移到环境100中的所需位置的信号。 驱动系统108包括可被用于在环境100中转移机器人102的马达、相关联的传 动装置等。

在本文阐述的该示例中,机器人102被编程为用于相对于环境100中的人 类完成预先定义的任务。在一示例性实施例中,这类预先定义的任务可以致使 人类104在环境100中与机器人102交互。机器人102和人类104之间的交互 的示例可包括,人类104接受来自机器人102的物品(例如,诸如产品样本、 广告或其他传单)、人类104向机器人102阐述想要的输入(例如,口头地、 通过姿势或通过与机器人102的硬件的交互来回答调查问卷)、人类104遵循 机器人102提出的指令等。因此,机器人102被编程为分析由多个传感器106 中的一传感器子集输出的信号以及执行一动作,其中基于关于机器人102与环 境100中的其他人类先前的交互的观察,该动作被认为是增加了该任务(例如, 使得人类104与机器人102交互)将被成功完成的概率。

因此,例如,机器人102的行为可基于在先前的机器人-人类交互期间作出 的观察来被调节以增加任务将相对于随后进入环境100的人类成功完成的概 率。例如,基于与环境100中的人类先前的交互,机器人102可习得,如果机 器人102在尝试发起与人类104的交互时机器人102处于离开人类104的某个 距离D处,则人类最可能在早上与机器人102交互。在这种情况下,处理器可 输出使得驱动系统108的马达将机器人102定位在离开人类104的距离D处的 信号。

此后,来自多个传感器106中的至少一个传感器的至少一个信号可被分析 来查明任务是否被成功地完成。例如,如果任务是人类104接受来自机器人102 的传单并且人类104接受了该传单(如由来自多个传感器106中的至少一个传 感器输出的信号指示的),则机器人102可查明任务被成功地完成。相反,如 果由来自多个传感器106中的至少一个传感器输出的信号指示人类104没有接 受该传单,则机器人102可查明任务没有被成功地完成。机器人102接着可基 于以下来调节其行为:1)由来自多个传感器106中的传感器子集输出的关于 机器人102何时尝试相对于人类104完成任务的信号;以及2)关于任务是否 被成功完成的确定。这样的调节可在线来进行,而无需将机器人102从环境100 中撤出并对机器人102重新编程。因此,随着时间推移,机器人102将变得更 适应相对于环境100中的人类成功地完成任务,因为机器人102的行为基于观 察到的与环境100中的人类的交互来被调节。

更具体地关于机器人102的操作,在机器人102被放置在环境100中之前, 程序员可标识关于环境100的被认为会影响机器人102将相对于人类104成功 地完成预先定义的任务的概率的多个条件。这样的条件可被建模并可被包括在 确定关于尝试相对于人类104完成预先定义的任务来执行的一动作时由机器 102的处理器访问的计算机可读模型中。不被认为具有关于机器人是否将成功 完成任务的影响的条件可被标记为噪声。根据一特定示例,任务可以是分发针 对在商场中开张的新店的传单,并且成功地将传单分发到人类的概率可取决于 以下条件:1)一天中的时间;2)机器人102和人类104之间的距离;以及3) 机器人102在环境100中的初始位置。在机器人102控制下的条件包括当初始 地尝试与人类104交互时的初始位置以及机器人102与人类104之间的距离。

随着时间推移,机器人102习得在其控制下,条件如何影响想要的输出、 它们自己如何变化以及作为可观察到的但在机器人102的控制之外的条件(诸 如一天中的时间以及在人类104接近机器人102附近的区域时该人类104的速 度)的函数。随着时间推移,机器人102调整在其控制下的条件以增加相对于 人类104的任务将被成功完成的概率。可以确定,结果将随着场景而变化。随 着机器人102习得在其控制下的条件、不在其控制下的那些条件之间的关系并 且监视相对于环境100中的人类的任务成功和失败,机器人102可调整其操作, 使得其控制能以在机器人102与越来越多的人类交互时增加成功的概率的方式 被控制的条件。

如将在以下被详细描述的,机器人102采用的学习框架能基于来自高斯回 归过程(GRP)之上的强化学习的原理的应用。如果在机器人102的控制之下 的条件被观察到来影响人类的动作,那么通过学习过程,模型可使得机器人102 以增加成功地相对于人类104完成任务的概率的方式来操作。

现在转向图2,示出了机器人102的示例性内容的描绘。机器人102可包 括头部部分202和身体部分204,其中头部部分202可相对于身体部分204移 动。机器人102可包括可操作来将头部部分202与身体部分204耦合的头部转 动模块206,其中头部转动模块206可包括能致使头部部分202相对于身体部 分204转动的一个或多个马达。根据一示例,头部转动模块206可被用于将头 部部分202相对于身体部分204在任何方向上转动多达45°。在另一示例中, 头部转动模块206可以允许头部部分202相对于身体部分204转动90°。在还 一示例中,头部转动模块206可以促进头部部分102相对于身体部分204转动 180°。在还一示例中,头部转动模块206可以促进头部部分102在任一方向上 相对于身体部分204转动360°。

头部部分202可以包括天线208,其被配置成接收和传输无线信号。例如, 天线208可被配置成接收和传输Wi-Fi信号、蓝牙信号、红外信号、声纳信号、 射频信号、或其他合适的信号。在又一示例中,天线208可被配置成接收和传 输去往和来自蜂窝塔、因特网或云(例如,云计算)的数据。机器人102可通 过使用天线208来发送和接收去往和来自位于远程的计算设备(例如,另一机 器人或控制设备、手持式设备等)的通信。

机器人102的头部部分202还可包括可被配置成向人类104显示图像或视 频的显示器210。在一示例中,显示器210可以是触敏显示器,使得人类104 可通过与触敏显示器的选择性交互的方式来向机器人102提供信息。附加地, 尽管未显示,机器人102还可包括键区,使得机器人102的用户可通过使用该 键区来与机器人102交互。

机器人102的头部部分202还可包括多个传感器106。例如,该多个传感 器可包括摄像机,其被配置成捕捉机器人102的周围环境(环境100)的图像。 在一示例中,摄像机可以是便于捕捉静止图像或视频(例如以720p格式、720i 格式、1080p格式、1080i格式或其他合适的高清视频格式)的高清摄像机。附 加地或替换地,摄像机可被配置成以适合于通过天线208的方式传输通过远程 计算设备的格式捕捉相对低分辨率的数据。

由于摄像机被示为包括在机器人102的头部部分202中,通过使用头部转 动模型模块206,摄像机可被配置成捕捉机器人102的环境100的相对较大部 分的实况视频数据。例如,摄像机可被配置成随着头部部分202绕着机器人102 的身体部分204转动,执行对机器人102的环境100的360°扫描。如以上指示 的,被摄像机捕捉的图像可被分析以标识与机器人102的环境100有关的某些 条件,诸如人类104的大小、人类104的性别、人类104的面部表情等。

如显示的,头部部分202包括多个传感器106,其中这样的传感器106可 包括能协助机器人102执行一个或多个功能(诸如自主导航、与人类104交互 等)的任意合适的传感器类型。在一示例中,传感器106可包括深度传感器, 其可包括红外相机和/或红外光束投影仪。这样的深度传感器可结合查明机器人 102和人类104之间的距离来采用。传感器106还可包括被配置成检测与机器 人102邻近的海拔高度落差的峭壁传感器、位置传感器(诸如全球定位系统 (GPS)传感器、加速度计、速度计、陀螺仪)等。尽管被显示为包括在头部 部分202中,但是可以理解,传感器106可被包括在身体部分204中或在头部 部分202和身体部分204之间分布。

机器人102的身体部分204可以包括用于向机器人102中的各模块提供电 量的电源216。电源216可以例如是,电池、超级电容、燃料电池、化学燃料 电池等。在一示例性实施例中,电源216可以是能通过将机器人102与坞站对 接来充电的可充电电池。由此,机器人102可包括电触点217,这些电触点217 可与坞站的对应电触点配合以允许电流从坞站传递到电源216。

身体部分204还可包括存储器218和相关联的处理器220。如将在以下详 细描述的,存储器218可包括被处理器220执行的多个组件,其中对这样的组 件的执行促进控制机器人102的一个或多个模块。处理器220可以通过任何合 适的接口(诸如主板)与机器人102中的其他模块进行通信。可以理解,处理 器220是机器人102的“大脑”,并被用于处理从机器人102的各模块(例如, 一个或多个传感器106和/或其他传感器)接收到的数据以致使机器人102以促 进相对于人类104完成预先定义的任务的方式来执行。

机器人102的身体部分204还可包括用于驱动机器人102的轮226和228 的驱动系统108。例如,轮226可以是驱动轮,而轮228可以是能用作枢轴的、 并由此改变机器人102的行进的取向/方向的转向轮。附加地,轮226和228中 的每一个可具有对应于它们的转向机构,使得轮226和228能有助于机器人102 的取向方面的改变。此外,尽管驱动系统108被显示为驱动轮226和228两者, 但是可以理解,驱动系统108可仅驱动轮226或228之一,而另一驱动系统可 驱动轮226或228中的另一个。在接收到来自传感器106的数据和/或接收到来 自用户的命令(说出的命令、姿势等)之际,处理器220可向头部转动模块206 和/或驱动系统108传送信号以控制头部部分202相对于机器人102的身体部分 204的取向和/或机器人102在环境100中的取向和位置。

机器人102的身体部分204还可包括扬声器232和话筒234。通过话筒234 的方式所捕捉的数据可结合以下来使用:对来自人类104的语音命令(语音话 语)进行响应、接受来自人类104的语音输入、确定人类104的语音的音量、 推断人类104的情绪等。扬声器232可被采用以在发起人类104和机器人102 之间的交互或继续人类104和机器人102之间的交互的尝试中向人类104输出 音频数据。机器人102的身体部分204还可包括投影仪236,其能将图像或视 频投影到投影表面(诸如涂有反射涂层的墙)上。

尽管机器人102已经被显示为具有特定配置并具有被包括在其中的特定模 块,可以理解,机器人102可用各种不同方式来配置,并且这些配置或发明人 构想的配置旨在落在所附权利要求的保护范围中。例如,头部转动模块206可 配备有倾斜马达,使得机器人102的头部部分202可相对于身体部分204转动 并倾斜(垂直地)。此外,机器人102可不包括两个分开的部分,而是可由单 个一体化身体构成,其中身体可被转动以允许通过摄像机212的方式来捕捉视 频数据。在还另一示例性实施例中,机器人102可具有一体化身体结构,并且 以上描述的摄像机可具有与其相关联的马达(诸如伺服马达),使得视频的位 置可相对于机器人102来更改以获得环境100的不同视图。此外,被显示为在 身体部分204中的各模块可被放置在机器人102的头部部分202中,并且反之 亦然。可以理解,机器人102在本文中已经出于解释目的被显示,并且不旨在 在所附权利要求书的范围方面进行限制。

现在参考图3,示出了机器人102的存储器218的内容的示例性描绘。存 储器218包括代表从传感器106子集接收到的信号的传感器数据302。该传感 器数据302例如可被保留在高速缓存/缓冲器中。出于解释的目的,这样的传感 器数据302可以是与影响机器人102是否能相对于人类104成功地完成任务的 条件有关的传感器数据。在一示例性实施例中,传感器数据302可包括来自第 一传感器的指示人类正在机器人102的环境100中的第一信号、来自第二传感 器的指示环境100的在机器人102的控制之外的条件的第二信号以及来自第三 传感器的指示可由机器人102控制的机器人102的条件的第三信号。

存储器218还包括访问被保留在存储器218中的模型306的动作确定器组 件304,其中在给定先前观察到的传感器数据的情况下,模型306适合于想要 的输出(相对于人类104的任务的完成)。初始地,在机器人102被部署在环 境100中之前,人类藉此与机器人交互的方式可被观察,并且与机器人120是 否能相对于人类完成任务有关的条件可被标识。动作确定器组件304接收传感 器数据302并访问模型306,并且基于传感器数据302和模型306,动作确定 器组件304确定要由机器人102采用来完成预先定义的任务的动作。

存储器218还包括任务标识器组件308,该任务标识器组件308接收传感 器数据302的至少一部分并确定预先定义的任务是否被成功地完成。例如,在 一些情况下,基于传感器数据302的至少一部分,任务是否被成功地完成可相 对容易地被标识。如果任务是要向人类104提供传单,则任务标识器组件308 可通过标识人类104是否接受了传单来确定任务是否被成功地完成。在另一示 例中,任务标识器组件308可基于从人类104接收到的音频反馈来确定任务是 否已经被成功地完成。在其他情况下,可能更加难以查明相对于用户104的预 先定义的任务是否被成功地完成。例如,如果任务是要与人类104具有某种正 在进行的对话,则可能难以确信地确定这样的对话何时存在。因此,任务标识 器组件308可使用推断来查明任务是否已被成功地完成,使得任务标识器组件 308推断在传感器数据302的至少一部分中标识的已知状态来查明任务是否已 被成功地完成。

存储器218还可包括能至少部分基于以下来调节模型306的学习器组件 310:1)与机器人102尝试完成任务的时间有关的传感器数据302(例如,从 机器人102尝试发起与人类104的交互时开始的10秒传感器数据),其中传 感器数据302指示环境100和/或机器人102的条件;2)由动作确定器组件304 采取的动作;以及3)来自任务标识器组件的关于机器人102是否成功地完成 了任务的指示。如将在以下更加详细描述的,学习器组件310可采用学习框架 来在机器人102保持在线的同时调节模型306,使得机器人102将相对于环境 100中的接下来的人类成功地完成任务的概率被增加。

本文中现在阐述一特定示例来示出被动作确定器组件304、任务标识器组 件308和学习器组件310采取的动作。然而,可以理解,这样的示例并非旨在 将权利要求的保护范围限制于此,尤其关于结合调节模型306来采用的预先定 义的任务和条件。由此可以理解,机器人102可被配置成执行其他任务,其中 其他条件与机器人102是否能相对于人类104成功地完成任务有关。

示例性场景可以是机器人102尝试分发针对在商场中开张的新店的传单。 对于这个示例,可以假设成功(向人类104提供传单)的概率受到以下条件的 影响:一天中的时间;人类104和机器人102之间的距离;以及机器人102在 环境100中的初始位置。由此,模型306可基于对应于这样的条件的观察来适 应。不在模型306中被考虑的其他变量可被一起集中在噪声组件中。在这个示 例中,任务标识器组件308可在对人类的每次靠近后立即标识相对于人类104 的任务是否被成功地完成,其中仅在靠近的人类接受了传单的情况下成功发 生。然而,一般而言,对成功的标识不需要是立即的,并且不需要是二元的。 学习器组件310基于在传感器数据302中捕捉的观察以及关于机器人是否相对 于靠近的人类成功地完成了任务来调节模型306,使得机器人102习得如何以 越来越有效的方式来靠近人类。

在该示例中,机器人102可从允许位置的离散集合P中选择环境100中的 某个位置p。机器人102可使用一天中的时间t来选择某个位置。一般而言,当 人类处于机器人102的感知范围内时,机器人102决定它将靠近人类(例如, 发起与人类的会话)的距离d。每个靠近的结果要么是成功的要么是不成功的, 并且假设没有与靠近人类相关联的成本。由此,出于这个示例的目的,在环境 100中,机器人102可靠近每个可能的人类。因此,选择靠近人类的距离d的问 题可更加正式地如下来定义。

每个靠近的结果ri是二元随机变量(成功或失败),其中成功的概率 是输入参数向量x的函数,该输入参数向量x包括机器人102的位置pi∈P、靠近 距离di∈D以及一天中的时间ti∈T。成功靠近(当机器人102成功地分发了传 单)的子集可被标记为学习器组件310被赋予在机器 人102的控制下的变量上优化靠近人类的成功率的任务。这可被表示为如下:

其中|·|表示集合的基数。

以上阐述的问题可通过学习器组件310作为在其上应用GPR技术的回归 问题来解决。这样的技术假设数据可被表示为来自多元高斯分布的采样。学习 器组件310可基于来自强化学习的原理将GPR与探查策略相组合。

更具体地,在给定输入变量的向量x的情况下,高斯过程可完全被它的平 均函数(m(x))和协方差函数(k(x,x′))来指定。因此,随机过程f(x)可被近似为高 斯过程:

协方差函数可被建模为状态参数、一天中的时间(kt)和靠近距离(kd)中的每 一个的协方差函数的组合,如下:

k(x,x′)=α1kt(x,x′)+α2kd(x,x′)(2)

可以注意到,这并不暗示变量是线性相关的,而是一个变量的协方差(α)不根据 另一变量而改变。位置变量可被分开地对待,并因此这一变量不被合并到协方 差矩阵中。

由学习器组件310对模型的调节涉及两个步骤。初始地,学习器组件310 可拟和与该过程相关的最佳解释传感器数据302中的数据的协方差矩阵。这可 通过将传感器数据302的概率最大化为协方差函数中的参数的函数来执行。更 具体地,与先前尝试的靠近的特定向量xi相对应的协方差矩阵Kt和Kd中的每一 个

通过将k(x,x)建模为如下来获得:

k(xi,xj)=σf2exp(-(xi-xj)22l2)+σn2δij(xi,xj)---(4)

其中δij(xi,xj)是克罗内克(Kronecker)增量,其仅在i=j的情况下为1,并且 否则为0。平方指数函数具有一些特征参数,诸如最大可允许协方差与观 察的分隔有关的长度参数(l)以及与过程噪声有关的参数

学习器组件310可接着根据观察向量y来预测过程的平均值和方差,如下:

y*=K*K-1y---(5)

var(y*)=K**-K*H-1K*T,---(6)

其中y*是对于观察到的输入向量x*的高斯过程预测(随机向量),是其平均 值,并且var(y*)是其方差。协方差矩阵是K=K(x,x)、K*=K(x*,x)以及 K**-K(x*,x*)。

由于学习器组件310迭代地执行这样的方法,用于选择下一状态来访问以 改进模型306的高效策略是合乎需要的。考虑先前呈现的平均值(等式5)和 方差(等式6),关于环境100中机器人102将其自己定位在其处的位置的策 略在以下被阐述(等式9)。在环境100中的所有可能的位置中,动作确定器 组件304可在采用概率的情况下选择具有的最大预测均值的位置、在采用 概率的情况下具有关于95%的C.I.的最高预测值的位置或其他随机位置。

其中r∈[0,1]是具有均匀分布的随机实数。

以下呈现在等式(12)中,当选择机器人102和人类104之间的距离时可 被动作确定器组件304采用的策略被阐述。假设一位置被选择,来自传感器数 据302的数据可被检索,并且可能的距离值可被预测。类似于对位置的选择, 采用概率具有最大均值的距离可被选择,但是考虑到以上提到的距离值, 具有正态分布的距离可被动作确定器组件304选择。在采用概率的情况下选 择具有关于95%的C.I.的最高值的距离值,并且距离可同样使用正态分布来被 选择。否则,一值在距离集合的域中被均匀地随机选择。这个过程可协助机器 人102探索概率,其中机器人102可不选择被标识为最优距离的距离,而是可 选择一距离来更好地习得与可能的距离相对应的概率(并由此,随着时间的推 移,习得最优距离)。然而,机器人102可从阈值数量的具有关于人类与机器 人102交互的最高概率的距离的距离域中选择一距离。

dmean=argmaxxx*max(y*)---(10)

dstd=argmaxxx*max(y*+1.96var(y*))---(11)

其中r∈[0,1]是具有均匀分布的随机实数。

概括而言,动作确定器组件304可监视传感器数据302以标识人类104何 时在机器人102附近。当动作确定器组件304检测到人类104在机器人102附 近时,动作确定器组件304可使用由传感器捕捉的数据来访问模型306,其中 这样的数据已知为与机器人102相对于人类104成功地完成任务的能力有关。 通过访问模型306,动作确定器组件304可确定要采取的动作,该动作将习得 的对应于可能动作的概率考虑在内,而不显著地牺牲成功地完成任务的概率。

由此,动作确定器组件304可从至少一个传感器接收指示能被机器人102 控制的条件的至少一个信号,并可任选地包括来自至少一个传感器的指示在机 器人102的控制之外的条件的至少一个信号。当访问模型306时,动作确定器 组件304可确定如何修改在机器人102的控制下的条件以增加相对于用户104 的任务将被成功地完成的概率(给定与其他人类的观察到的先前交互的情况 下)。

如以上提到的任务标识器组件304分析传感器数据302以标识任务是否被 成功地完成。学习器组件310可接收关于机器人102在尝试完成任务时何时/ 如何靠近人类104的传感器数据,以及来自任务标识器组件308的关于任务是 否被成功完成的指示。通过使用这个信息,学习器组件310可调节模型306(使 用回归),使得机器人102成功地完成相对于环境中后续人类的任务的概率被 增加。

图4-5示出关于人类-机器人交互的示例性方法。尽管各方法被表示和描述 为顺序地执行的一系列动作,但要知道和理解,这些方法不受该顺序的次序的 限制。例如,一些动作能以与本文描述的不同的次序发生。另外,某一动作可 以与另一动作并发地发生。此外,在一些实例中,实现本文描述的方法并不需 要所有动作。

此外,本文描述的动作可以是可由一个或多个处理器实现的和/或存储在一 个或多个计算机可读介质上的计算机可执行指令。计算机可执行指令可包括例 程、子例程、程序、执行的线程等。另外,这些方法的动作的结果可以存储在 计算机可读介质中,显示在显示设备上,等等。

现在仅参考图4,示出了促进确定要相对于特定环境中的人类采取的动作 的示例性方法400,该动作最大化相对于该人类的任务将被成功地完成的概率。 方法400在402开始,并且在404,由机器人的第一传感器输出的第一信号被 接收到,其中该第一信号指示人类处于机器人的环境中。例如,第一信号可以 是视频信号,其中视频信号的各帧捕捉机器人的环境中的人类。

在406,由第二传感器输出的第二信号被接收到,其中该第二信号指示关 于环境的第一条件,其中第一条件受到机器人的控制并已被标识为与已被分配 到机器人的任务有关。在以上阐述的示例中,这样的信号可以是机器人的位置、 机器人的速度、机器人的加速度、机器人的扬声器的音量等。

在408,要被机器人采取的动作被标识,其中该动作被标识为完成涉及与 人类进行交互的任务,并且其中至少部分基于以下来标识该动作:第一传感器 输出的第一信号、第二传感器输出的第二信号以及当机器人尝试完成关于环境 中的其他人类的任务时机器人的过往成功和失败。如以上指示的,机器人的学 习可在线进行。

在410,信号被传送到机器人的致动器以致使机器人执行在408处标识的 动作。这样的动作可以是以特定的音量输出语音、以特定的速度朝人类转移等。 方法400在412完成。

现在参考图5,示出了用于更新被机器人使用以确定要相对于人类采取的 以完成特定任务的动作的模型的示例性方法500。方法500在502开始,并且 在504,移动机器人标识人类处于与其一起的环境中。在506,一天中的当前 时间被确定。在508,适合于当机器人先前尝试与环境中的人类交互时所观察 到的关于机器人的数据的模型被访问。

在510,习得的模型被用于确定移动机器人和人类之间的距离,根据习得 的模型,该距离协助机器人在给定变化的观察的情况下来习得人类和机器人之 间的最佳距离并附加地增加机器人将成功地与人类交互的概率。例如,GPR可 被用于确定移动机器人和人类之间的距离。在512,信号被传送到移动机器人 的马达,该信号使得马达将移动机器人从环境中的第一位置驱动到环境中的第 二位置。当移动机器人处于第二位置时,移动机器人和人类之间的距离是在510 处确定的距离。

在514,检测到移动机器人达到了所需位置(第二位置)。在516,响应 于检测到机器人处于第二位置,作出关于人类是与移动机器人进行了交互还是 没有与移动机器人进行交互的确定。在518,立即响应于标识出人类是与移动 机器人进行交互还是没有与移动机器人进行交互,来自强化学习的原理被用于 至少部分基于一天中的当前时间、在510处确定的距离以及标识出人类是与机 器人进行了交互还是没有与机器人进行交互来更新模型。模型由此被更新以增 加随后被标识为在环境中的一人类将与机器人进行交互的概率。方法500在520 完成。

现在参考图6,示出了可以根据本文公开的系统和方法使用的示例性计算 设备600的高级图示。例如,计算设备600可被用在促进更新与机器人进行的 任务的成功完成相对应的习得的模型的系统中。作为另一示例,计算设备600 可被用在支持确定要执行的一动作以协助机器人成功地完成任务的系统中。计 算设备600包括执行存储在存储器604中的指令的至少一个处理器602。这些 指令可以是例如用于实现被描述为由上述一个或多个组件执行的功能的指令 或用于实现上述方法中的一个或多个的指令。处理器602可以通过系统总线606 访问存储器604。除了存储可执行指令,存储器604还可传感器数据、适合于 观察到的数据的模型等。

计算设备600还包括可由处理器602通过系统总线606访问的数据存储 608。数据存储608可以包括可执行指令、传感器数据、环境的地图等。计算 设备600还包括允许外部设备与计算设备600进行通信的输入接口610。例如, 输入接口610可被用于从外部计算机设备、从用户等处接收指令。计算设备600 也可包括使计算设备600和一个或多个外部设备相对接的输出接口612。例如, 计算设备600可以通过输出接口612显示文本、图像等。

考虑了通过输入接口610和输出接口620与计算设备600通信的外部设备 可被包括在提供实质上任何类型的用户可与之交互的用户界面的环境中。用户 界面类型的示例包括图形用户界面、自然用户界面等。例如,图形用户界面可 接受来自用户采用诸如键盘、鼠标、遥控器等之类的输入设备的输入,以及在 诸如显示器之类的输出设备上提供输出。此外,自然语言界面可使得用户能够 以无需受到诸如键盘、鼠标、遥控器等之类的输入设备强加的约束的方式来与 计算设备600交互。相反,自然用户界面可依赖于语音识别、触摸和指示笔识 别、屏幕上和屏幕附近的手势识别、空中手势、头部和眼睛跟踪、声音和语音、 视觉、触摸、手势、以及机器智能等。

另外,尽管被示为单个系统,但可以理解,计算设备600可以是分布式系 统。因此,例如,若干设备可以通过网络连接进行通信并且可共同执行被描述 为由计算设备2000执行的任务。

在此所述的各种功能可以以硬件、软件或其任何组合来实现。如果以软件 实现,则各功能可以作为一条或多条指令或代码存储在计算机可读介质上或藉 其进行传送。计算机可读介质包括计算机可读存储介质。计算机可读存储介质 可以是可由计算机访问的任何可用存储介质。作为示例而非限定,这样的计算 机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘 存储或其他磁存储设备、或能被用来承载或存储指令或数据结构形式的期望程 序代码且能被计算机访问的任何其他介质。如本文中所使用的盘(disk)和碟 (disc)包括压缩碟(CD)、激光碟、光碟、数字多用碟(DVD)、软盘和蓝 光碟(BD),其中盘通常以磁的方式再现数据,而碟通常用激光以光学方式再 现数据。另外,所传播的信号不被包括在计算机可读存储介质的范围内。计算 机可读介质还包括通信介质,其包括便于计算机程序从一地向另一地转移的任 何介质。连接例如可以是通信介质。例如,如果软件使用同轴电缆、光纤电缆、 双绞线、数字订户线(DSL)、或诸如红外线、无线电、以及微波之类的无线 技术来从网站、服务器、或其它远程源传输,则该同轴电缆、光纤电缆、双绞 线、DSL、或诸如红外线、无线电、以及微波之类的无线技术被包括在通信介 质的定义中。上述的组合应当也被包括在计算机可读介质的范围内。

替换地或另选地,此处描述的功能可以至少部分由一个或多个硬件逻辑组 件来执行。例如、但非限制,可使用的硬件逻辑组件的说明性类型包括现场可 编程门阵列(FPGA)、程序专用的集成电路(ASIC)、程序专用的标准产品 (ASSP)、片上系统系统(SOC)、复杂可编程逻辑器件(CPLD)、等等。

以上所描述的包括一个或多个实施例的示例。当然,出于描绘前述各方面 的目的而描述上述设备或方法的每个可以想到修改和改变是不可能的,但本领 域内的普通技术人员可以认识到,各方面的许多另外的组合和置换都是可能 的。因此,所描述的各方面旨在包括所有这些属于所附权利要求书的精神和范 围内的改变、修改和变型。此外,就在详细描述或权利要求书中使用术语“包括” 而言,这一术语旨在以与术语“包含”在被用作权利要求书中的过渡词时所解释 的相似的方式为包含性的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号