装备自然对话接口的类人机器人、用于控制机器人的方法和对应程序的利记博彩app

文档序号:2832849阅读:479来源:国知局
专利名称:装备自然对话接口的类人机器人、用于控制机器人的方法和对应程序的利记博彩app
装备自然对话接ロ的类人机器人、用于控制机器人的方法和对应程序本发明属于类人机器人领域。更确切地说,本发明适用于编程和使用与这种类型机器人对话的接ロ的方法,以允许所述机器人在用户命令下执行动作,由所述机器人提供适当的答案,以更一般方式建立所述机器人及其对话人或对话者之间的“类人关系”。只要机器人拥有人类的外观和功能的某些属性:头、躯干、两个手臂,任选地两只手、两条腿、两只脚等,就可以将其描述为类人的。除了外观之外,类人机器人能够完成的功能将取决于其进行运动、讲话和“推理”的能力。类人机器人能够走路、利用四肢或头部做出姿态。它们能够执行的姿态复杂性持续増大。某些机器人能够响应于来自环境的激励而讲话。语音识别和合成工具的发展还使得能够开发用于某些机器人和人之间对话的功能,这显著丰富了交互的可能性。尤其由US7711569以及在序号US2009/287678下公开的申请公开了使用语音的这种人-机器人接□。在这些现有技术文献中,通过语义和/或语境辅助减轻了语音识别中固有的缺陷,语境辅助需要访问数据库,学习和使用大量计算资源以能够分辨所识别的不确定——低识别置信区间、假阳性、假阴性等。在多功能类人机器人在其计算资源方面必须要经济以管理其诸如运动的关键过程的情况下,使用这些手段是不适当的。将有利的是能够具有一种类人机器人,其能够利用机器人的板上嵌入的计算资源,以简单而有效的方式解决由传感器和软件所识别出的不确定,但是目前还没有完善的解决上述问题的方式。本发明通过提供ー种用于和类人机器人对话的接ロ解决了这个问题,该接ロ使用了自然模式的回答确认。为此目的,本发明公开了ー种类人机器人,包括至少两个通道和控制模块,所述通道用于根据不同的模态与至少ー个对话人自然传送消息,所述至少两个通道均是从包括接收通道、发送通道的ー组通道选择的,控制模块用于所述通道的输入/输出,其中所述控制模块被配置成基于执行从ー组功能选择的至少ー个功能改善对所述机器人接收的消息的理解,所述ー组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能。有利地,所述通信通道是从ー组用于发送和/或接收听觉、视觉、触觉消息、关于所述机器人至少ー个部分位移和/或位置的消息以及数字消息的通信通道选择的。有利地,第一通信通道是声音发送通道,第二通信通道是由所述至少一个对话人用于从机器人的至少一部分接收位移和/或位置的通道,所述位移和/或位置代表所述对话人向机器人传送的输入,所述输入的规格由所述机器人通过在所述第一通道上发送的消息向对话人定义。有利地,本发明的机器人还包括第三触觉通信通道,对话人通过其验证进行第二通道的输入。有利地,第一通信通道是用于接收声音消息的通道,第二通信通道是用于发送声音消息的通道,并且所述控制模块能够评估所述机器人对在所述第一通道上接收的第一消息理解的置信水平,并在所述第二通道上产生其内容取决于所述置信水平的至少一个第二消息。有利地,所述第一通道包括过滤器,用于对表达列表接收的消息进行语音识别,预期的识别率与其每个相关联,并且所述第二消息是通过从一组请求启发而选择的,所述一组请求包括用于重复在所述第一通道上的所述第一消息的请求,由对话人在过滤器表达子集的第一通道上发送的第三消息进行确认的请求,以及由对话人在至少第三通道上发送至少另一个消息的请求。有利地,本发明的机器人被配置成在所述第二通道上发送在所述第一通道上开始聆听的信号,以便确保在半双工模式中对第一和第二通道上的消息进行排序。有利地,所述选择启发是实际识别率相对于基于预期识别率确定的阈值的位置的函数。有利地,所述第三通道是用于触觉接收的通道或用于从机器人一部分接收位移的通道。有利地,本发明的机器人还包括用于与电子邮件系统连接的模块,所述连接模块允许所述电子系统上的账户的持有者使用所述机器人作为代理,以在所述第二通道上接收/阅读电子消息,在第一通道上书写/发送并利用所述第一和第二通道管理所述账户。有利地,所述第三通道是用于对与所述第一通道的过滤器表达列表对应的对象图像进行视觉接收,所述图像与先前记录的具有所述表达的所述对象的图像数据库比较,所述数据库可以由所述控制模块访问,用于所述通信通道的输入/输出。有利地,第一通信通道是用于接收视觉消息的通道,第二通信通道是用于发送声音消息的通道,并且所述控制模块能够评估所述机器人对在所述第一通道上接收的第一消息理解的置信水平,并在所述第二通道上产生其内容取决于所述置信水平的至少一个第二消息。有利地,所述第一通道包括过滤器,用于识别表达列表接收的消息的图像,预期的识别率与其每个相关联,并且所述第二消息是通过从一组请求启发而选择的,所述一组请求包括用于重复在所述第一通道上的所述第一消息的请求,由对话人在第三通道上发送的第三消息进行确认的请求,所述第三通道用于接收过滤器表达子集的声音消息,以及由对话人在至少第四通道上发送至少另一个消息的请求。有利地,所述通道中的至少一个是混合通道,其接收由用于输入和输出的所述控制模块合并的两个通道的输出作为输入。本发明还公开了一种控制类人机器人与至少一个对话人通信的方法,包括至少两个步骤:由通信通道使用不同模态发送消息,所述两个步骤均是从包括接收通道、发送通道的一组通道选择的,以及控制所述通道输入/输出的步骤,其中所述控制步骤被配置成基于执行从一组功能选择的至少一个功能改善对所述机器人接收的消息的理解,所述一组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能。本发明还公开了一种包括程序代码指令的计算机程序,在计算机上执行所述程序时允许执行本发明的方法,所述程序被配置成允许类人机器人根据不同的模态与至少一个对话人自然传送消息,所述类人机器人包括至少两个通道和子例程,所述至少两个通道均是从包括接收通道、发送通道的ー组通道选择的,所述子例程用于所述通道的输入/输出,其中所述控制子例程被配置成基于执行从ー组功能选择的至少ー个功能改善对所述机器人接收的消息的理解,所述ー组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能。本发明还公开了ー种编辑和控制至少ー个类人机器人和至少ー个对话人之间通信接ロ的方法,所述至少一个类人机器人包括至少两个通道和控制模块,所述通道用于根据不同的模态与至少ー个对话人自然传送消息,所述至少两个通道均是从包括接收、发送通道的ー组通道选择的,控制模块用于所述通道的输入/输出,其中所述控制模块被配置成基于执行从ー组功能选择的至少ー个功能改善对所述机器人接收的消息的理解,所述ー组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能,还包括编程所述所选功能的步骤。有利地,编程所述所选功能的所述步骤包括如下至少ー个子步骤:利用声音发送通道定义第一通信通道,利用用于接收所述至少一个对话人在机器人肢体上施加的至少ー个位移的通道定义第二通信通道,定义所述至少一个位移和所述对话人向机器人传送的输入之间对应关系的子步骤,以及通过产生至少ー个要由机器人在所述第一通道上发送到对话人的消息定义所述输入规格的子步骤。有利地,本发明的编辑和控制方法还包括定义第三触觉通信通道的子步骤,由此所述对话人验证在所述第二通道上执行的输入。有利地,本发明的开发的方法的步骤包括,通过至少一个控制框执行其步骤,其中要由所述机器人执行的主动作帧链接到从在先事件和要编程的动作之后的后继事件的组中选择的至少ー个事件,并且其被编程为根据时间线预定义的临时约束进行。有利地,编程所述所选功能的所述步骤包括如下至少ー个子步骤:利用用于接收声音消息的通道定义第一通信通道,利用用于发送声音消息的通道定义第二通信通道,定义用于评估所述机器人对在所述第一通道上接收的第一消息理解的置信水平的功能的子步骤,以及定义在所述第二通道上产生其内容取决于所述置信水平的至少ー个第二消息的子步骤。有利地,本发明的开发方法还包括,定义用于语音识别由表达列表在第一通道上接收的消息的过滤器的子步骤,其中每个表达与期望识别率相关联,以及通过从包括重复第一信道上的第一消息的请求、要由对话人在过滤器的表达的子集的第一通道上发送的第三消息确认的请求、由对话人在至少ー个第三信道上发送至少ー个其它消息的请求的ー组请求选择的启发而定义第二消息的内容的子步骤。有利地,本发明的开发方法的步骤包括,通过至少一个控制框执行其步骤,其中要由所述机器人执行的主动作帧链接到从在先事件和要编程的动作之后的后继事件的组中选择的至少ー个事件,并且其被编程为根据时间线预定义的临时约束进行,所述控制框是选择类型的框。本发明还公开了ー种包括程序代码指令的计算机程序,在计算机上执行所述程序时,用于执行本发明的方法,所述程序被配置成允许用户编程类人机器人,所述类人机器人包括至少两个通道和子例程,所述通道用于根据不同的模态与至少ー个对话人自然传送消息,所述至少两个通道均是从包括接收、发送通道的一组通道选择的,所述子例程用于所述通道的输入/输出,其中所述子例程中用于编程的模块用于控制要由机器人执行并从一组功能选择的至少一个功能,所述一组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能。有利地,本发明的计算机程序还包括用于编程向控制框传送至少一个参数的模块。有利地,本发明的计算机程序还包括用于以所述程序的接口编程机器人的视觉通信通道的输入的返回的模块。有利地,本发明的计算机程序还包括用于编程并行进行的机器人行为的模块。本发明的接口还提供了提供多模确认模式的优点,可以针对进行对话的环境容易地调节该模式,例如,如果环境噪声过高,语音识别不会有任何效果。用户因此能够被邀请通过触摸、手势或显示特定颜色或形状的数字符号来替换/确认模糊的答案。于是,可以允许用户按照其自己的方式,以直观方式替换或模仿在他面对其计算机时或在他使用智能电话或触摸板时习惯的传统接口。此外,机器人自身的表达模式可以是多模的,特别是通过组合语调、凝视、姿态,从而保持其对话人的注意并向他传送情绪或关于要提供的答案的线索。此外,通过接近人和人之间通信的自然状态,本发明的接口有助于改善识别系统的结果,增强在“虚拟现实”中的用户体验的质量,亦即,与物理上似人的物体进行对话的体验。本发明还提供了一种人机工程和多用途环境,用于开发这些接口,使得能够非常容易地在极少时间内创建专门适于使用其设计者未想到的机器人的新交互情形。从接下来对示范性实施例及其附图的描述,本发明将得到更好理解,其各种特性和优点将显而易见,在附图中:-

图1是本发明几个实施例中类人机器人物理架构的图示;-图2示出了在其几个实施例中对于实施本发明有用的包括传感器的类人机器人头部;-图3是高层次软件架构图,这些软件允许控制本发明几个实施例中的机器人的功能;-图4是用于编辑和编程本发明几个实施例中的机器人行为/交互的功能架构图;-图5是以一般方式应用的处理操作的功能流程图,这些操作用于改善由类人机器人对其在本发明的若干实施例中接收的响应/激励给出的解释;-图6是针对本发明几个实施例中机器人的行为/交互的程序设计逻辑图;-图7a,7b和7c示出了时间图,示出了本发明的几个实施例中多模接口交互的逻辑和时域组合;-图8a,8b,8c,8d和8e示出了屏幕序列,使得能够利用二元选择和选项编程与类人机器人的对话,用于改变本发明实施例中的交互语言;-图9a,9b, 9c, 9d和9e示出了屏幕序列,使得能够利用来自列表的选择和选项编程与类人机器人的对话,用于改变本发明实施例中的交互语言;-图10a,10b,IOc和IOd示出了屏幕序列,使得能够在本发明的实施例中在选择列表中的几个选项之间进行语音识别测试比较;-图1la和IOb示出了屏幕序列,使得能够替换或补充选择列表的选项并在本发明的实施例中在几个选项之间执行新的语音识别测试比较;-图12a,12b,12c和12d示出了屏幕序列,使得能够在本发明的实施例中,在与问题不同的语言中,在选择列表中的几个选项之间进行语音识别测试比较;以及-图13a,13b,13c和13d示出了屏幕序列,使得能够在本发明的实施例中在选择列表的几个选项之间验证/修改语音识别测试比较的阈值。图1示出了本发明实施例中的类人机器人的物理架构。尤其在2009年10月15日公开的专利申请W02009/124951中公开了这样的机器人。这种平台充当了导致本发明的改善的依据。在后续描述中,可以由这种通用术语或由其商标NA0 称呼这种类人机器人,但这不会改变援引的一般性。这种机器人包括大约二十四个类型110的电子卡片,用于控制驱动关节的传感器和致动器。图中所示的卡片110是控制左脚的卡片。该架构的优点之ー是控制关节的卡片大部分是可互換的。关节通常具有至少两个自由度,因此具有两个电动机。每个电动机都是在角度上被驱动的。关节还包括几个位置传感器,尤其是MRE (磁性旋转编码器)。电子控制卡包括现有的微控制器。例如,这可以是来自Microchip公司的DSPIC 。它是ー种耦合到DSP的16-位MCU。这种MCU具有Ims的循环周期。机器人还可以包括其他类型的致动器,尤其是其顔色和強度能够传送机器人情绪的LED (发光二极管)。后者还可以包括其他类型的位置传感器,尤其是惯性单元、FSR (地压传感器)等。头部160包括机器人的智能,尤其是执行高层次功能的卡片130,允许机器人完成分配给它的任务,尤其在本发明的框架之内,其參与游戏。不过,卡片130可以位于机器人中的别处,例如在躯干中。不过,将可以看出,在可以取下头部时,这个位置使得能够更换这些高层次功能,因此尤其会完全改变机器人的智能,因此非常迅速地改变其任务。或者相反,用另ー个身体改变ー个身体(例如利用无缺陷身体改变有缺陷的身体),同时保持相同的人工智能。头部还可以包括专用卡片,尤其是用于处理语音或视觉,或还用于处理服务输入/输出,例如打开端ロ建立WAN(广域网)上远距离通信所需的编码。卡片130的处理器可以是现有的x86处理器。将以有利的方式选择低耗电处理器,例如来自AMD公司的Geode (32位,500MHz)。该卡片还包括ー组RAM和闪速存储器。这种卡片还管理机器人与外部(行为服务器、其他机器人等)的通信,通信通常在WiFi上、WiMax传输层上,任选地在利用任选地封装在VPN中的标准协议进行数据移动通信的公共网上。处理器通常由标准OS驱动,由此使其能够使用通常的高层次语言(C,C++,Python等)或用于人工智能的专用语言,例如用于编程高层次功能的URBI (用于机器人的专用程序设计语言)。卡片120容纳在机器人的躯干中。这是计算器所处的地方,计算器确保将卡片130计算的命令传输到卡片110。这个卡片可以容纳在机器人中的别处。不过定位在躯干中是有利的,因为它接近头部,在四肢的交叉点,由此使得能够使将这个卡片130链接到卡片120和卡片110的链接布置最小化。这个卡片120的计算器也是现有的处理器。有利地,这能够是时钟频率在IOOMHz的ARM9 型32-位处理器。处理器的类型、其中心位置接近开/关按钮、其链接到电源的控制器使其成为ー种工具,适于管理机器人的电源(待机模式、紧急停机等)。该卡片还包括ー组RAM和闪速存储器。
这种具有三个层次的架构对于本发明的如下实施方式尤其有利:机器人必须能够执行协调运动和其他动作,例如传感器读数,并同时解释其环境中发出的语音或标志,且对其做出反应或响应。图2a和2b分别示出了类人机器人头部的正视图和剖面图,头部包括对在其几个实施例中实施本发明有用的传感器。图1的头部160被改进为头部200a、200b,以便为机器人装备传感器能力和用于表达的能力,这对实施本发明是有用的。NAO 装备有 4 个全向微音器 211a、212a、213a、214a,例如由 KingstateElectronics Corp供应的参考KEEG1540PBL-A,一个211a在前面,一个214a在后面,一个212a和213a在其头部的每个侧面(还参见图2b),其中在图中仅看到通往外部的孔,因为它们分布在头的内部。基于微音器进行的声音捕获,语音分析和识别系统,例如由Acapela 公司供应的BabEAR 系统,识别预定义单词的文集,具有适当接口的用户(本说明书中进一步给出)能够用其自己的术语对其进行丰富。这些单词使得能够触发其选择行为,尤其是对机器人解释的问题的答案。软件环境支持几种语言,如说明书中进一步所述。NAO还能够检测到声音的来源,由此允许其分辨几个对话者之间的模糊处。NAO通过两个CMOS 640 X 480摄像头220a观看,能够拍摄每秒高达30幅图像,例如,OmnivisionTM牌摄像头,型号为0V760 (CMOS 1/6英寸传感器:3.6 y m像素)。放在前额高度的第一摄像头指向其水平线,而放在嘴高度的第二摄像头观察其直接环境。该软件使得能够检索NAO看到的照片以及视频流。为了察觉和解释其环境,NAO在板上承载了一组面部和形状检测和识别算法,允许其识别其对话人,定位球体以及更复杂的物体。

放在其头颅顶部,NAO装备有电容传感器230a,例如分成三个部分,由本申请的申请人特别开发。对于特定应用可以提供超过三个部分。于是能够通过触摸,例如通过按下一系列按钮来给出NAO信息,按下按钮能够触发由应用定义的动作,在本发明的范围之内,该动作可以是与每个按钮相关联的不同答案,通过一系列提出的选择卷动,访问帮助菜单等。该系统带有LED,指示是否有接触。NAO能够通过朗读任何本地驻留在其存储空间中的任何文本文件来表达自己的意思,例如根据说明书中进一步解释的模式编程或从网址或RSS流检索。装备了 2个设置于其头部每侧上的扬声器210b,其语音合成系统,例如来自Acapela的Acapela Mobility,是可以参数化的,由此尤其允许修改语音的速度和/或音调。能够向NAO分派音乐文件并使其播放它。NAO接受例如wav和mp3格式,由此在本发明的范围之内能够提供音乐答案或定制的声音,作为伴奏或取代语音回答。也可以接受其他格式的音乐文件。图3是高层次软件架构图,这些软件允许控制本发明实施例中的机器人功能。----------------------------------------------------------尤其在2009年10月15日公开的专利申请W02009/124955中公开了这种类型的软件架构。它包括用于管理机器人和PC或远程地点之间通信和交换提供实施本发明所需的软件基础设施的软件的基本功能。在下文中通过一般方式描述了这种架构,未特定提到特定应用中使用的软件功能,要理解的是这些功能被作为用于管理本发明机器人行为的任何其他软件功能而被处理。
在图3中,非常示意性地示出了例如通过无线链路与第一远程终端TDl通信的第一类人机器人RH1,以实现移动。远程终端的表达是为了表示远离服务器平台PFS的終端,其通过通信网络提供对网络服务SW的访问,专用于这种类型的类人机器人RH1。A-------------------------------------------------------当然,系统元件之间的通信链路可以基于导线,作为变化,移动终端可以是便携式电话或便携式计算机。第二类人机器人RH2例如也通过无线链路与第二远程终端TD2通信,以免妨碍类人机器人RH2的移动。远程终端TDl和TD2以及服务器平台PFS通过通信网络RC在网络中链接。对于服务器平台PFS的网络服务以及远程终端TDl和TD2而言,还对于类人机器人RHl和RH2而言,专用于至少ー个模块的单个相应链接模块B5,B2,B4,BI和B3包括至少一系列指令,通过由处理器执行来实施软件功能。在本范例中将链接模块B5,B2,B4,BI和B3的相应模块M51,M52, M21, M22, M41, M2, Mil, M12, M31, M32表示为每个链接模块数量为两个,但这个数字可以不同,对于每个链接模块可以是任意值。现在将例示由拥有第一类人机器人RHl的第一远程终端TDl的用户看到的系统操作的总体非限制性范例。例如,他能够通过其机器人利用第一远程终端TDl板上的软件应用,或能够从第一远程终端TDl在服务器平台PFS上访问的软件应用,执行特定数量的功能。例如,他利用软件应用的图形工具简单地执行用于其机器人的应用,其中机器人将行走10秒,然后说“大家好”。例如,将这种应用下载到模块形式,例如模块Mll形式的第一类人机器人RH1,然后由用户利用第一远程终端TDl触发。第一类人机器人RHl触发模块M11,这必须使用“行走”功能。模块Mll然后使用连接接口和功能调用模块或代理P1,向模块Mll链接到的链接模块BI做出请求。链接模块BI做出指向其自己模块和用于链接到其直接链接的网络的模块(子链接模块)的请求,以迭代的方式重复这个操作,直到网络链接模块利用其在模块中具有的函数调用位置对请求做出响应。还由父链接模块(沿相反方向)以迭代的方式传输对请求的响应,直到链接模块BI直接链接到需要连接的代理Pl并调用这项功能为止。例如,针对行走请求的功能位于第二远程终端TD2的模块M41中。作为回报,链接模块B4返回“行走”功能的调用參数,例如,其包含表示机器人将行走的时间的以秒为単位的整型Duration參数,以及布尔型的Exclusive參数,其表示机器人的排他或非排他行走,即是否授权机器人在行走时做另ー种动作。在本范例中,利用等于10的Duration參数,等于I的Exclusive參数调用行走功能,因为在本范例中希望其在行走10秒之后讲话。连接接口和调用模块Pl因此能够利用期望參数远程进行连接和对“行走”功能的调用,如同其位于本地一祥。连接接口和功能调用模块使用能够调用位于不同終端或服务器上的模块功能的内部通信软件,能够通过来自调用模块的不同计算机语言中的系列指令编写该功能。代理使用例如“SOAP内部通信软件。因此这样产生了平台间和语言间的通信架构。一旦执行了这种不局限某处的“行走”功能,模块Mll必须要调用“讲话”功能。另一个连接接口和功能调用模块或代理P2向模块Mll链接到的链接模块BI提出请求。链接模块BI —开始通过以一系列存储指令的形式执行的功能做出指向其自己模块Mll和M12的请求,例如,这将返回模块M12中这种“讲话”功能的存在。链接模块BI通知连接接口和功能调用模块P2,然后其能够通过本地调用类型的调用直接调用模块M12的“讲话”功能,作为参数,例如,具有要讲的文本“你好”,这个参数已被链接模块BI发送到代理P2。此外,该系统包括用于表示移动终端状态的参数的存储和管理模块STM (“短期存储器”的简称),在类人机器人RHl的这种情况下,其适于在接收到外部事件时更新所述参数的值,并在预先请求时通知模块所述存储的参数之一被更新。因此,预先警告的模块将能够根据已经被通知的参数修改采取动作。结合前面描述的范例,例如,存储和管理模块STM能够存储表示机器人RHl的运动检测器检测的任何人的出现的参数状态。在这个参数从表示机器人直接环境中没有人的状态过渡到表示机器人直接环境中有某人的状态时,根据模块Mll事先进行的请求,存储和管理模块STM通过事件或信号预先警告这种值的变化。模块Mll因此能够例如自动触发前述相继触发(“行走”和“讲话”功能)。在图3的范例中,存储和管理模块STM形成远程终端TDl的一部分,但作为变化,它能够形成服务器平台PFS或类人机器人RHl或RH2的另一远程终端TD2的一部分。存储和管理模块STM还能够在存储器中存储特定参数在相应基准时间段上的时域演化。于是,系统的模块还能够访问这些参数的值从特定持续时间的演化,并在要采取的动作中考虑这些演化。作为变化,所调用功能的模块可以位于服务器平台PGS上、类人机器人RH1、RH2或通信网络RC的远程终端TD1、TD2上。于是,本发明使得能够具有分布于网络上的程序,并能够具有移动终端的相同操作,无论其对功能做出本地或远程调用。此外,本架构还使得能够具有一组代表移动终端状态的存储参数,并能够考虑这种状态的演化,以自动触发特定动作。此外,存储和管理模块还能够记录预定时间段期间参数值的演化,由此允许模块访问这些参数演化的记录。这些通信和存储功能构成用于管理机器人接口的操作系统,对于实施本发明而言尤其有用。图4是用于编辑和编程本发明实施例中的机器人行为的功能架构图。2010年5月25日提交的专利申请PCT/EP2010/057111已经描述了这样的架构。用于编辑和编程类人机器人行为的软件使得能够实施的架构,商业名称为Choregraphe ,也可以用其属名或其商标名称呼,这不会对援引的一般性产生不利影响。这种架构控制的机器人可以是具有头、躯干和四肢的类人机器人,每个部分都有关节,每个关节都受一个或多个电动机的控制。这种架构允许系统用户通过在虚拟机器人上创建模拟行为并在通过基于有线或无线链路链接到系统的实际机器人上执行来控制这样的机器人。这需要在编程为这样做的计算机的屏幕上观看、模拟和执行行为(例如向正前方、右方或左方行走n步;手臂之一在头上方的“你好”运动;语音等)和(头、四肢部分、给定角度的)运动。
图4是处理操作的流程图,示出了由事件触发的关节控制,具有其时间维度。在本发明的语义中由“方框”或“控制框”410表示事件触发的控制。框是树状程序设计结构,能够包括下文定义的以下元件中的ー个或多个:-帧420的时间轴的“时间线”;-“图”或流程图470-脚本490。控制框通常通过连接而链接在一起,连接通常从ー个框向另一个发送事件信息项,如说明书中进ー步详述的那样。任何框都直接或间接链接到“根框”或根,其对机器人的行为/运动方案进行初始化。帧420的时间轴表示机器人的行为和运动受到的时域约束,所述行为和运动定义于插入帧的所述时间轴的框中。在后续描述和权利要求中,将使用术语时间线,通常接受具有程序设计界中同样含义的该术语。于是,时间线进行框行为和运动的同歩。它被切割成帧,其与按照每秒帧数(FPS)定义的进展速度相关联。每条时间线的FPS可以由用户进行參数化。作为默认,可以将FPS固定在给定值,例如15FPS。时间线可以包括:-ー个或多个行为层430,每层包括一个或多个行为关键帧或“主要行为帧”450,它们自己可以包括ー个或多个图或“流程图”470,实际上它们是也可以直接而无需通过行为层或时间线附着到更高层框的框的组;-ー个或多个运动层440,每层包括一个或多个运动关键帧或“主要运动帧”460,其能够包括ー个或多个运动屏480。行为层定义机器人的一组行为或主要行为帧。可以在同一个框之内定义几个行为层。那么将把它们编程为由框的时间线以同步方式前迸。行为层将能够包括ー个或多个主要行为帧。主要行为帧定义机器人的行为,例如行走(“行走”)、讲话(“说话”)、奏乐(“音乐”)等。在本发明的系统中预先编程特定数量的行为,以便用户在简单的“拖放”操作中直接从库中插入,如说明书中进ー步详述的那样。每个主要行为帧都由触发事件定义,触发事件是帧插入时间线的帧起点。主要行为帧的结尾仅在说明书范围内定义为在其后插入另一主要行为帧,或如果定义了结束事件。运动层定义机器人的一组运动,是由一个或多个相继的主要运动帧编程的,将机器人关节电动机的运动集合在一起。要执行的这些运动由所述电动机到达的角位置定义,可以由运动屏幕上的动作编程它们,在说明书中进ー步详述所述动作。同一个框的所有主要运动帧由框的时间线同歩。主要运动帧由到达帧定义。开始帧是前ー主要运动帧的结尾或框的开始帧。由主要动作帧的普通名称指称主要行为帧和主要运动帧。有可能并行执行几个(行为或运动的)主要动作帧,条件是它们附属于同一时间线。如进ー步详述的,流程图是ー组连接在一起的框。每个框在其顺序中能够包括其他时间线,新的行为或运动层附属于其他时间线。脚本是可由机器人直接执行的程序。在本发明的框架之内,以有利的方式在C++语言中編写脚本。包括脚本的框不包括任何其他元件。
可以在使用Windows 、Mac 或Linux 操作系统的PC或个人计算机类型的另一平台上嵌入软件。本发明的类人机器人将一般被编程为能够利用Choregraphe 软件与人交互。这种开发架构可能提供的时域和行为逻辑的组合对于实施本发明尤其有利。已经专门开发了说明书中接下来还提到的特定数量的工具,用于实现本发明范围之内具有用于自然对话的接口的类人机器人。图5是以一般方式应用的处理操作的功能流程图,这些操作用于改善由类人机器人对其在本发明的若干实施例中接收的响应/激励给出的解释。随着时间推移,人类已经开发了用于和机器交互的很多手段。这些手段追随技术的进步,因此它们越来越有效。就一切情况而论,为了有效,无论交互是什么内容,都必须适应平台和用户需求。图形界面和窗口环境这样使用户能够支配若干界面元件,也称为图形界面部件(Gn元件或图形用户界面元件),例如:文本区域(文本框)、0K/取消按钮、要勾选的框(复选框)、单选按钮或框的组合(组合框)。这些元件适应于图形界面,不能在类人机器人上这样使用,在原则上讲,类人机器人不提供传统屏幕类型的任何视觉反馈。现在,与机器人的交换应当至少与与计算机的图形界面的那些一样丰富。因此希望能够与勾选框、在键盘上输入文本、双击图标或在应用窗口中点击叉号以相同方式选择选项、拼写单词、运行或离开应用。也不希望简单拷贝这些现有元件,正是因为希望用户有类人且自然的界面。因此需要找到适于自主类人机器人的用户接口单元。这些元件还必须容易由类人机器人行为的创造者进行参数化,并允许容易针对用户的语言进行调整。现有的自主机器人能够提供简单的人-机器人接口,例如语音识别,但在现有技术中,用户或开发者都不拥有任何地区化(允许多种语言)和管理故障的多模用户接口元件。实际上,当前,能够嵌入尺寸和价格合理,装备多传感器采集和处理能力,具有移动能力和其四肢大量自由度的类人机器人中的语音识别的类型必然受到能够在机器人板上承载的计算机资源和电能资源的限制。实际上,必须要根据优先级向处理操作分配这些资源,使得能够确保信号俘获的安全和可靠性以及执行运动必需的控制。因此必须要提供人-机器人接口元件,在当前语境中,允许语音识别不可避免的缺陷的可能最好校正,并特别利用如下一种机制为用户提供成功的交互:这种机制用于解决机器人针对其从用户接收的消息和机器人返回的问题给出的解释的疑惑,这些消息和问题落在其收敛的对话序列的框架之内。还要指出的是,人不以自然方式向机器人讲话,因为他不会取回其人的基准,亦即,人在同样状况下会具有的姿态和行为。如果机器人不朝人的方向观看,这是人和人交互的惯常交互,交互将尤其不自然。此外,与人际交往相比,这种与多功能类人机器人在板上的计算机资源兼容的语音识别自身不允许有效管理与几个用户的交互。此外,大部分机器人几乎不使用或不使用自然语言,语音合成通常是利用人事先编写的短语编程的,例如它们是为机器人虚构的故事或由人书写且机器人将阅读的电子邮件。因此它缺少使得人-机器人交互尽可能接近人-人交互的元素。现有技术的人-机器人接口没有足够的多模或交互代码,使其能够模拟人-人自然交互并有助于交互的成功。此外,如果该接口调用用户已经获取的甚至其日常使用的知识,经验将容易得多,用户一方将仅需要很少的学习。于是,通过移动头部,利用虚拟现实头盔,将比按下计算机键盘上的箭头越发直观地进行在虚拟世界的房间内对人眼的扫描。本发明的方案提出用户接口元件,组合软件和硬件,适于自主类人机器人。通过将上文使用的术语GUI元件置換到机器人的行为,然后定义Bn元件(行为用户接ロ元件),这里可以将其更一般地简称为EI元件。例如可以定义这样的UI元件,以便通过简单方式定义动作,例如:-通过同时轻敲机器人头部三个触觉传感器在任意时刻退出应用;-利用语音识别询问机器人;-通过轻敲机器人触觉传感器之ー转移到应用的下一歩。于是这些简单的元件是真实的交互代码,其可以嵌入一般的库中,以便在机器人的所有行为和应用中可用,或者利用给定项目的具体资源而被创建。本发明的n元件是能够由行为开发者容易使用和參数化的元件。它主要是Choregraphe框,其变为用于程序设计行为的基本⑶I元件。需要指出,这些框中的ー些包括在C++中利用Qt 环境产生的用于开发图形界面部件的Widget库编码的Choregraphe插件。在图5中示出了允许实施本发明的功能架构的简化视图。在图1的中央单元120之内或结合中央单元120装配了用于通信通道的输入/输出的控制模块510,机器人通过该模块与对话者交換消息。在物理或逻辑上讲,这个模块包括机器人装备的专用通信通道的发送/接收预处理的模块。这并非限制,图中示出了三种消息通信通道,每种类型都具有接收通道和发送通道。类型I的接收机通道521对应于人的听觉,允许机器人获取声音信号,优选是具有语义内容的语音消息。因此,机器人可以装备有图2a中所示的微音器210a。这个通道的输出通常由执行语音识别算法的专用信号处理处理器进行预处理。根据使用它们的环境(环境噪声、多个谈话者等)以及或多或少完整的特定学习的实施,这些算法可能或多或少复杂且有效性不一。不过,在所有配置中,识别误差都是不可避免的。类型I的发送器通道531对应于人的语音,允许机器人讲话,亦即,发出具有语义内容的语音信息,例如通过图2b中所示的扬声器210b。语音的语言、音色、节奏和音调可以根据语境改变并表达感觉。不过这些声音也可以是嘟嘟响、事先录制的音乐,要理解的是,在莫尔斯电码序列中,嘟嘟响,以及根据预先确定的代码、音乐,也能够具有语音内容。类型2的接收机通道522对应于人类视觉,允许机器人映射其环境并获取图像,如果它们存储在它能够访问的存储器中,然后可以识别图像。因此,机器人可以装备例如图2a中所示的CMOS摄像头220a。摄像头之一优选专用于远处的视觉,另ー个用于近处视觉。有利地,图像识别算法适于允许检测,甚至识别机器人的对话者的面部。在此,无论识别性能如何,同样不可避免有不确定性或误差。图像识别也可以适用于简单形状,例如在VDU上呈现给机器人的数字,可以通过编码定义其含义。类型2的发送器通道532是没有直接的人等价物的人为通道。这个通道允许嵌入机器人身体中的LED产生的光信号发射。可以提供大量的LED,尤其是在眼睛、耳朵、躯干、脚上。它们可以具有不同顔色并具备可变频率的闪烁能力。这个通道为机器人装备了用于发送消息的简单而强大的手段。尤其是可以由用户定义和编程特定代码。类型3的接收机通道523是相当于人的触觉的通道。不过,这个通道局限于触觉领域。例如,后者可能集中于触觉传感器,例如图2a中所示的传感器230a。机器人的对话人将致动触觉传感器以向机器人传送二元(动作的批准)或更复杂类型的消息。这个通道接收的信息甚至能够对应于用户定义的代码,或者单一的(分别具有惩罚和奖励含义的一道、一划)或连续的莫尔斯电码类型。特定的触觉传感器不是定义这种类型通信通道绝对必要的。在其接收对话人接触动作的范围内而言,可以定义同一类型的通道,其中消息传感器是由机器人手臂和/或前臂位置表示的连续模拟传感器,所述位置由对话人向机器人传送的数值表示,如说明书中接下来要进一步解释的那样。实际上,在任何时刻,机器人都知道其关节的角位置,因此,如果事先已经定义了所述位移的含义,机器人知道如何将对话人作用下的位移导致后者的变化解释为消息。肢体(例如前臂)的简单触摸也可以由机器人关节的角位置传感器辨别。更加突兀的运动,例如颠簸或提升,可以分别被机器人的惯性单元及其脚底传感器(FSR)检测到。类型3的发送器通道相当于人的姿态。头可以拥有两个自由度:由偏航角度量的在方位角上的位移,以及由俯仰角度量的高度位移。这两个运动在传统上定义同意(俯仰)或拒绝(偏航)的消息。它们还允许机器人朝向它正在谈话的对话人凝视。肩、肘、腕的关节可以分别具有以下自由度:俯仰和翻滚(翻滚或右/左扭转);偏航;偏航。手可以具有打开和闭合能力。这些关节运动的组合使得能够定义要通过这个通道向机器人的对话人发送的消息内容。存在或者还可以定义图中未示出的其他消息通信通道。具体而言,机器人能够通过红外线、蓝牙或Wifi链路接收和发送信号。因此对话人能够通过这个通道向机器人发送消息,尤其是利用为此目的编程的遥控器,例如来自Apple 的iPhone 或具有运动俘获和/或定位功能的另一种电话。同样地,机器人能够经由这些通信端口向另一个机器人发送消息。根据本发明,可以通过将不同类型的通道合并到混合型通道来定义消息通信通道。于是,可以组合装备有语音识别的伴音通道和装备有图像识别的视觉通道的输出以生成新通道,其输出将被数据合并过程改善,来自这个通道的输出比独立获得的两个输出置f目水平更闻。图5中还示出了机器人的两个对话人541和542。自然地,在本发明的实施情形中,仅有一个或超过两个对话人也是可能的。此外,对话人可以距机器人一定距离,条件是通过数据链路链接到机器人所在的房间,使其能够发送交换消息所需的音频和/或视频信号。自然,在这种情况下,将不可能使用需要物理接触的类型3的通信通道。机器人相对于其对话人及相对于其环境的相对位置也可以由特定传感器测量(与对话人位置相关联的语音识别;图像识别;超声波传感器等)并被解释,例如利用音量、音调或表达分析进行交叉引用,以便表征人/机器人对话的性质并任选地修改其进度。于是,机器人可以将接近并大声讲话的对话人视为威胁并触发各种防御行为,具有关联的身体语言,甚至修改或中断交互。由模块510执行这些各种通信通道的输入/输出的逻辑控制。后者使得能够如说明书中进一步解释的那样在同一时间通过在同样第一类型的发送器通道上发送的消息解决第一类型接收机通道(例如伴音通道)的输入的疑惑,可以由同样第一类型的通道或第二类型接收机通道(例如触觉通道)上的对话人在响应中执行所述疑惑解决动作。也可以在第二类型的通道(例如视觉通道,通过LED发送)上发送请求解决第一类型通道(例如伴音通道)上接收的消息疑惑的消息,对话人的疑惑解决动作必须要在第三类型的接收机通道(例如触觉通道)上执行。这些组合纯粹是作为非限制性例示给出的,多种多样的组合都是可能的。也可以更简单地使用用于通信通道510的输入/输出的控制模块,以组合消息的输入,这种组合使得能够实际消除机器人“头脑”中疑惑的任何可能性。可以利用Bn元件以简单方式编程用于组合接收机通道接收的输入和接收机通道发送的输出的功能。将进一歩描述由选择型控制框或选择框构成的ー种Bn元件。后者表示从封闭列表做出选择的方式。它尤其适于在对话范围之内识别有限数量的单词和短语,机器人能够在聆听用户选择之前提出问题。在下文中描述了来自不同类型选择框的不同类型Bn元件。利用选择整数的范例例示了这种模态。对于这个元件来说,机器人例如在其类型I的发送器通道531上指明用户可用的最小数量和最大数量,并将其手臂之一伸向其对话人,前者受到微弱的伺服控制。这个手臂将构成图5的类型3的接收机通道523。手臂的低位与最小数字相关联,高位与最大数字相关联。于是,用户使用机器人的手臂作为选择其数字的指针。机器人利用肩俯仰关节(ShoulderPitch)上可用的触角而知道其手臂位置。为了增强这种交互,在用户移动其手臂时,机器人看着他的手。对于每次位置改变,机器人能够指明选择的数字。用户能够通过触摸机器人头部中央的触觉传感器并利用类型3的另ー接收机通道523来验证他的选择。也可以做出規定,尤其是在相对于传感器的精确度而言数字的数量过大的情况下,使一个手臂允许做出粗调,第二个手臂更精确地选择。可以由数字表示表达的有序列表。以上流程然后变成从机器人宣布的下拉菜单选择的模态。能够选择数字的变化由単独利用触觉传感器构成。例如:-轻敲前部传感器使得能够下降数字列表中的ー个凹ロ;-轻敲后部传感器使得能够在数字列表中前进;-按下前部或后部传感器使得能够加快卷动数字列表;-通过触摸中央传感器做出选择。可以看出,能够根据使用本发明的情形显著改变可能的组合。图6是针对本发明几个实施例中机器人的行为/交互的程序设计逻辑图。附图例示的范例是这样的情形:机器人与对话人对话,对话人为其提供从单词列表做出的选择,例如,对于字谜游戏而言。在这种情形中,使用类型I的接收机通道、类型3的接收机通道和类型I的发送器通道。图中代码610表示的动作是机器人对话人的动作:用户从例如机器人事先指出的列表指明选择;超时(或没有选择);对请求确认对这个列表中一个或多个单词理解做出“是
/否,,回答。图中代码620表示的动作是机器人动作,将根据代码630表示的内变量状态激活该动作。这些内变量的含义如下:
-r:机器人识别用户从选择列表中那些指出的单词的概率的比率;-f:识别失败的总数;-t:超时次数(或预定义时间之后对话人没有选择);-S1:识别概率比率的阈值I ; -S2:识别概率比率的阈值2 ;-tmax:可能超时的最大次数;-fmax:可能失败的最大次数。处理超时的一般方式对应于向提出的问题应用人类日常生活中的简单原则:“无论谁一言不发都表示同意……”在下文中描述这幅图中表示的处理操作的一般逻辑。NAO聆听用户/对话人,将变量f和t初始化为零。如果对话人允许过去预定超时时间,将超时计数器加一,如果达到最大超时次数,中断交互循环。可以在用户进行的特定动作(例如向机器人询问)时的判定性语境中触发应用,在开始时确定游戏的玩家数量或通过按下头上触觉传感器之一,或在人工智能的语境中(这将根据参数触发参数例如是检测到人的存在、一天中的时间、或更一般地一天事件的日志,这是由机器人存储的),或是在行为中,对这种应用进行初始化。例如,如果检测到用户在呼唤它,它会触发应用,允许其知道什么用户希望找它以及他为什么喊它。在另一种语境中,如果在其检测到有人是提出其很希望玩且很久未玩的游戏时,它自己将能够触发应用。如果对话人在超时期满之前指明选择,将实测的识别概率比率r与预期识别概率比率的阈值SI和S2 (SKS2)比较,接下来将描述确定这些值的方式。如果SI,将单词的这种识别视为失败。将失败计数器加一。如果达到fmax,明确宣布该单词未识别,中断交互。如果未达到fmax,可以针对三种情况做出规定,如图中所示:-在第一次失败时(f=l),机器人向其对话人指出“我不理解”,并激活由重复选择列表构成的“activateHelpWhenFailure”功能的那一个;-在第二次失败时(f=2),机器人还指出“我不理解”,并激活^activateHelpffhenFaiIure^功能的另一个,由如下操作构成:为其对话人提供选择列表,并要求其对话人使用其触觉传感器,向他展示如何使用它;-超过(3( f〈fmax),机器人可以宣读短语,向其对话人指出不满足有效谈话的条件,例如“噪音太大”,这将通常提示所述对话人结束谈话。如果Sl〈r < S2,机器人会疑惑它实际听到了什么;根据图中所示的流程,它然后能够采取动作以解决疑惑,方式是读出其认为识别的单词或表达,并让问其对话人“对吗? ”;如果对话人回答“对”或在超时结束时不回答,机器人认为答案是正确的。如果对话人回答“不”,将失败计数器加一;如果达到fmax,机器人肯定地指出它不理解,停止交互;如果未达到fmax:-在第一次失败时(f=l),机器人能够激活由重复选择列表构成的^activateHeIpffhenFai lure功能的那一个;-在第二次失败时(f=2),激活“activateHelpWhenFailure”功能的另一个,由如下操作构成:为其对话人提供选择列表,并要求其对话人使用其触觉传感器,向他展示如何使用它;-继续到第三次失败,直到fmax,对话人必须重复选择,直到识别概率比率改善。通过这种方式,于是能够大大减轻语音识别的缺陷并在机器人及其对话人之间的会话中实现更高的流畅性。图7a,7b和7c示出了时间图,示出了本发明的几个实施例中多模接ロ交互的逻辑和时域组合。这些图是选择框的视图,使其能够编程图6的图表中所示类型的交互。选择框是图4中在红字标题410下例示的那些框,但它们的类型特别,允许对用于自然对话的专用行为进行特别有效的程序设计。这些图中的符号含义如下:-在图7a 中,-710a表示机器人或其对话人的动作/语音;-720a表示触觉传感器;-740a表不识别蜂鸣声;-750a表示处于旋转激励位置中的机器人面部的LED ;-751a表不处于固定位置中的机器人面部的LED ;-760a表示机器人面部LED的闪烁(根据机器人对所接收消息的理解情况,可以是各种颜色);-770a表示超时功能;-780a表不选择框的输出;-790a表示功能“转到触觉传感器菜単”(图7b);-7A0表示功能“转到选择分类”(图7c);-7B0表示功能“转到语音识别菜単”;-Rl, R2和R3分别表示机器人毫无歧义地理解的情况、机器人理解但有ー些疑惑的情况以及机器人根本不理解的情况;-在图7c中,710c表示功能“返回上级菜単”。选择框中編程的处理操作的一般逻辑与已经描述的那些相同。这里描述的额外元件是:-使用机器人面部的LED750a,任选地使用LED闪烁来强调问答的交换:LED处在固定位置751a以表示机器人正在检测语音且分析它;-使用机器人发出的音频“嘟嘟声”表示其准备好识别的时刻;实际上,因为处理能力和电源的限制,而且为了避免识别中的噪声,后者在语音合成的同时不工作;因此后者不必过早回答机器人向对话人提出的问题;“嘟嘟声”给出报时以开始回答;-能够使用几个层次的帮助,这取决于机器人的历史记录及其在这次交換和先前交换过程中对这位用户的体验;-在几个菜单之间导航以便于程序设计的可能性。现在描述的附图是屏幕快照,在其上使用被描述为上文图4注释的Choregraphe软件的选择框部件,通过在类型I (语音交換)的范例所示接收和发送通道中使用,编程NAO机器人和对话人之间的简单或复杂交互。
图8a, 8b, 8c, 8d和8e示出了屏幕序列,使得能够利用ニ元选择和选项编程与类人机器人的对话,用于改变本发明实施例中的交互语言;图9a, 9b, 9c, 9d和9e示出了屏幕序列,使得能够利用来自列表的选择和选项编程与类人机器人的对话,用于改变本发明实施例中的交互语言;图10a,10b,IOc和IOd示出了屏幕序列,使得能够在本发明的实施例中在选择列表中的几个选项之间进行语音识别测试比较;图1la和IOb示出了屏幕序列,使得能够替换或补充选择列表的选项并在本发明的实施例中在几个选项之间执行新的语音识别测试比较;图12a,12b,12c和12d示出了屏幕序列,使得能够在本发明的实施例中,在与问题不同的语言中,在选择列表中的几个选项之间进行语音识别测试比较;图13a,13b,13c和13d示出了屏幕序列,使得能够在本发明的实施例中在选择列表的几个选项之间验证/修改语音识别测试比较的阈值。通常,选择框允许用户从预定义的ー组选择中选择答案。它调用表格类型的部件,其允许开发者以直观而可读的方式编写其ー组可能选择。如果开发者事先不知道,也可以输入选择列表作为框的输入。于是,例如,在应用管理用户的邮件的情况下,机器人将能够让其从独立文件中存储的其地址薄选择联系人。这些n元件是可高度參数化的工具。于是,使用语音识别和/或合成的Ui元件被地区化。例如,可以在法语和英语中编辑选择框。在用于其程序设计的图形接ロ层次上,用于改变编辑框的语言的Widget Qt 可以是
しomboBox。Choregraphe框的输入(和输出)可以是几种类型:1.“bang”:发送了信号2.数字:输入检索数字、整数或浮点3.字符串:输入检索字符串4.动态。动态类型的输入(相应的输出)检索(相应地输出)ALValue。ALValue是NAOQI库中描述的常见类型的联合,尤其是:整数、浮点、数组、布尔型、串以及“bang”,这是ー种未初始化的ALValue。动态型的输入使得能够以非常灵活的方式管理应用的演化。具体而言,向机器人的对话人提供对模态间和/或模态内确认模式的选择以及辅助的表达,以根据可能选择的数量激活他们。于是,在输入是动态型的条件下,能够输入python表格(数组类型)作为Choregraphe框的输入。用于实施本发明的Choregraphe软件包括布尔型的框參数(复选框)、字符串型(文本框)、可或不可由最終用户编辑的字符串型的多种选择(组合框)、整数或浮点型(滑动器)或其他类型。例如,在其行为或应用中使用选择框的程序员能够点击或不点击布尔型參数“Repeat validated choice” (法语为 “R6p6ter Ie choix valid6”)。这将在交互期间对NAO的行为有影响,因为它定义了 NAO是否系统地重复用户确认的选择。为了缓解语音识别的不足,诊断工具使得能够使语音交互的成功率最大化。于是,在选择框中,在开发者在表格中完成其单词列表时,他能够运行这种工具,其将指出这些单词的识别百分比,100%对应于机器人将肯定地识别单词,0%对应于机器人将不认识的单词。通过比较语音合成所说的单词(假设其接近用户将说的内容)和语音识别预期的单词,进行这种诊断。此外,为了使交互的机会和自然性最大化,对于每种选择,可以定义几种表达。于是,为了让机器人发送邮件,开发者将能够设置几个短语,例如“发送邮件”、“发送消息”或“发送电子邮件”供用户自由支配。之后,用户将在这些各种表达之间进行选择,以便最终说出相同的东西。本发明的方案还使得能够解决语音识别的问题,这不会管理几个用户的存在。人们都知道,在向几个人讲话时,交流是困难的,因此他们通过逐个讲话而调整。由于存在清晰的单用户交互代码而促成这种状况,例如机器人使用熟悉的法语“tu”形式。有缺陷的语音识别要求人-机器人接口应当最好地管理尤其是失败状况,使用户在正确时刻讲话(这将涉及到交互代码),提供作为对话替代并更有效的方案。在本发明的框架之内,音频诊断功能使得能够解决这种类型的问题。让要测试的单词由语音合成软件发音,即文本到语音,从而执行该功能。然后通过语音识别分析这个单词。更确切地说,将同一单词发音例如三次,每次都改变语音速度及其间距,从而具有单词发音方式的代表性样本。然后对语音识别返回的三个识别率进行平均,这个值就是单词的估计识别百分比。音频诊断有两种可能模式:“共同”模式如下工作:由语音识别聆听选择框中记录的所有单词,然后NAO如别处所述那样计算估计的识别率。“逐个”模式如下工作:对于给定线路,由语音识别聆听要分析的单词,以及其他线路上的其他可能选择,但不是位于与其相同的线路上的其替代。这种诊断的好处是:如果两个“同义词”彼此类似,例如,“ coucou ! ”和“coucou toi ! ”,估计的识别率将不会像“共同”模式中那样低(识别率将非常差,因为它们常常被语音识别搞混乱)。实际上,如果机器人将两个同义词搞混了,那不是严重的情况。一旦在每条线路上执行了诊断,就按照估计识别率的递减顺序布置同义词,在线路的末尾记录最好同义词的识别率。于是,编程选择框以在机器人不确信正确识别或解释它时让用户确认其答案。这种机制与听力有缺陷的人或陷入难以提出其理解的环境的人使用的相同。根据对用户答案的理解水平,机器人将具有不同的反应。然后可以根据识别软件计算的识别置信度固定几个阈值(例如,定义为对图5注释的阈值SI和S2):例如,在未达到第一识别阈值SI时,机器人要求玩家重复其答案;在达到第一阈值SI但未达到更高的第二阈值S2时,机器人将提出问题,回答该问题将能够解决该疑惑。机器人也可以提供帮助,使得用户正确回答机器人:它能够给出可能选择的列表,指出与其交互的含义,重复提出的问题(如果有的话)。交互代码对于减轻语音识别的缺陷也是非常有用的。实际上,语音识别不能在机器人讲话时向它讲话,运行语音识别和其实际工作相当长时间的时刻之间有滞后。于是在运行语音识别时播放音频代码,向用户表示他可以讲话了。之后,相当直观的视觉代码,即旋转的耳朵LED,让用户知道机器人在聆听。使用语音识别的UI元件还向这种语音识别提供了替代手段,以允许用户甚至在重复理解问题的情况下(这可能是由于例如极端噪声环境)也成功传送。这些替代手段可以是触觉、听觉、 视觉等。例如,选择框允许用户利用触觉传感器选择答案:按下前部传感器使其能够在选择列表中前进(机器人然后指出每个选择),按下后部传感器使其能够在这个列表中后退,按下中央传感器使其能够确认其选择。还可以想到机器人指出各种选择,用户在听到他希望确认的选择时说“OK”。否则,为了确认,并不是说“是”或“否”,用户能够按下机器人手臂之一。用于被定义为对图5的注释的各种类型1、2、3的通信通道输入/输出的控制模块使得能够以简单而用户友好的方式产生用于通过选择框的各种输入/输出之间的链路管理这些组合的功能。通常,本发明的方案提出接ロ的人性化,模拟人-人接ロ。我们知道,在两个人之间直接通信期间有三个主要因素开始起作用:语音,当然是指所说的单词,而且还有语音的音调和视觉要素。作为证据,通过在其整个演化内观察间接通信的手段,例如书写或即时消息,能够非常清楚地看清楚如何能够作为一般方式通过增加对直接通信的替代,诸如标点或新近的笑脸符来缓解对话中信息的缺乏。在所有情况下,尽管当前有很大的技术进步,但在人-机器人通信中这些基本元素仍然难以替代。不过,能够找到人为的替代改善对话的再现。机器人的语音合成和语音识别允许等效语音。因此它们是其与人通信的基础。类人机器人的另ー个优点是,能够表现出大部分对话的视觉要素,即姿态和面部表情。实际上,尽管它是拟人主体,其位移不如带轮机器人容易,但其姿态基于人类行为可以更容易,因此与人类运动一祥容易解释。因此能够更容易地进行通信。尽管如此,具有固定面部和音调的机器人仍然缺少语音的音调和面部表情。不过,这两个要素由其他功能、传送这些要素的代码来补偿。它们需要用户或多或少冗长的学习。然后,目标是使得这种学习尽可能短,因此,使得代码尽可能与用户已经知道的一致且接近。通过调整Ben Shneiderman 在其著作 Designing the User Interface:Strategies for Effective Human-Computer Interaction(1997 年出版:http://www.cs.umd.edu/hcil/pubs/books/dtu1.shtml)中指出并通常应用于图形界面的人机工程学基本法则,实现简单的一致代码并因此实现自然和流畅的交互作用。这些法则指出以下原理:代码和接口元件的相关性,高级用户的快捷方式的存在,所执行动作上存在的即时返回,对话的明确结束,误差的简单管理,反馈的可能性,用户必须感到他自己在交互期间是主人,最后,用户短期存储器的较小激励。语音识别和合成是有局限的,尤其是通过没有自然语言和仅仅单个用户识别使得能够仅识别有限数量的单词。本发明的方案解决了机器人不使用自然语言的问题,以便提供充分自然的人-机器人交互。已经指出,最好的使用是由机器人的语音合成实现的。需要指出,使用语音合成和/或识别的机器人的大部分UI元件是分成地区的。于是,讲法语的(对应于讲英语的)用户将能够用法语与其机器人对话(相应地用英语),从而使得交互的成功最大化。之后,由定时和交互代码做出最好的使用,以便改善机器人的反应性并促成人-机器人通信的成功。于是,选择框提出几个參数,例如来自用户的答案的等待时间。于是确保了机器人在考虑用户根本未回答之前无需等待太长时间,而且其等待足够久以便能够在适当的时候激活语音识别。交互代码可以是姿态、声音和/或视觉。于是,用于语音识别的声音嘟嘟声让用户知道机器人不再聆听他。此外,在本发明的方案中,利用不同模态的几种通信通道,尤其是机器人一方的行为,更自然地实现了通信。于是,使用声测定位和面部检测(尤其是其位置)允许机器人向人类对话者转头,在寻找另ー个人时这似乎是既成事实。机器人还能够进行对话人身份识别(面部识别、语音的音色、声纹等),以便寻找某人,尤其是利用其姓名、其特有的特性,例如,机器人进行过的会话和行为的历史记录。机器人还能够根据用户是否碰到其触觉传感器(像人一样的行为)知道用户对其行为想到了什么,然后在例如语言通信期间播放它。机器人将试图以适于状况的方式动作。于是,它能够播放动画,使用其LED并广播声音,由此允许它模拟在人讲话时(利用人的手势讲话等)做出的本能姿态。机器人还可以点头。几项研究,尤其是由Justine Cassell在其文章Social Dialogue With EmbodiedConversational Agents (2005年发表)中做出的研究:http: //citeseerx.1st.psu.edu/viewdoc/download doi=10.1.1.124.9853&rep=repl&type=pdf),能够证明,在机器或化身做出点头动作时,即使是在随机做出时,人会认为这个机器或化身似乎对谈话更加感兴趣。所有这些姿态信号(例如用头部、手臂或手表示赞成或不同意)、声音信号、交互的时序、对话人的位置或检测到用户的意图(他正在前进或后退)使得能够通过使其更接近惯常的人类代码而使得人-机器人交互更加自然和有效。它们因此还解决了与限制性语音识别相关的一些问题。它们是本发明的优点之一。图8到13的屏幕快照描述了可以编程NAO机器人和对话人之间对话的几种情况的方式。为了在行为中使用选择框,必须要将其从Choregraphe的默认库拖放到图表中(图8a)。增加了 LocalizedText框,这将允许在法语和英语中编辑问题。在LocalizedText框的文本插件中用英语书写问题“你最喜欢什么动物?”(图Sb)。还希望用法语编辑该问题。因此,使用框的插件的组合框,并选择法语。(图Sc)。然后在文本插件中,在其未被编辑时是空的,用法语写入该问题的文本:“Quel est ton animal prefere (图8d)。必须要将该问题输入到选择框中,以便由机器人适当管理。将LocalizedText框的输出链接到选择框的onStart输入(图Se)。现在将用英语编辑选择,如选择框的组合框所示。从框中取消默认选择。在表格的第一 行中写入第一选择“穿山甲”(图9a)。在第二行中,提出另一种动物:“蜘蛛”,但添加同义词“狼蛛”,与蜘蛛由斜线“/”隔开。这表示机器人认为蜘蛛和狼蛛是同义的(图%)。通过增加例如“兔子”和“小型马”结束选择的编辑。要指出的是,在增加选择时行数自动调整(图9c)。组合框用于将用于编辑选择框的语言切换到法语(图9d)。就像对英语那样,书写选择的列表,于是获得:“穿山甲”、“araigr^e/tarentule”、“兔子”和“小型马”(图9d)。不过我们不知道机器人是否将确实识别这些选择。然后我们希望运行音频诊断功能。点击“加”(图10a)。然后点击评估图标(图10b)。对于每行,评估单词(图10c)。对于同义词而言,将最好的放在开始,那么所示的百分比是最好同义词的结果。完成音频诊断,然后看出“poney”有识别很差的风险(图10d)。然后决定改变单词并以“cheval”取代(图11a)。重新运行诊断。“Cheval”获得82%的优异分数,保持它(图lib)。切换回英语,并在英语单词上运行诊断(图12a,12b)。然后向“pony”添加同义词“horse”,作为“cheval”的翻译(图12c)。重新运行诊断,要指出的是,已经将分数比“pony”更好的“horse”自动放在了第一位置(图12d)。现在将编辑可以调节的参数。点击位于选择框左下方的拇指轮按键(图13a)。参数化窗口打开(图13b);在布尔型参数“激活手臂”上打钩(图13c)。于是,机器人将在其讲话时移动其手臂。点击OK以确认这个新的参数化。
将行为的一般输入链接到LocalizedText框的输入,将选择框的输出链接到行为的输出(图13d)。现在将描述像上文所述范例中那样编程的软件程序的示范性操作。利用Choregraphe图标“enslave all motors on/off ”操控机器人,然后利用姿态库的“init pose”位置使其直立。利用其网页上提供的參数将机器人的语言设置为法语。利用Choregraphe的Play图标在机器人上启动该行为。移动其手臂,机器人询问“你最喜欢什么动物? ”,然后启动聆听声音信号。在机器人聆听时,它的眼睛变为蓝色,它耳朵也是如此,其头部的触觉传感器闪烁蓝色。用户然后回答“dolphin”。在NAO分析刚才说了什么时,它的眼睛变为黄色。它不理解答案:其眼睛闪烁红色两次,其耳朵为蓝色。它说“我不理解。你能够回答:穿山甲、蜘蛛、兔子或马。你最喜欢什么动物? ”,同时移动其手臂并返回到聆听状态。用户然后回答“rabbit”。机器人不能确信,但相信其理解为穿山甲。其眼睛闪烁绿光两次。然后在活泼移动其手臂的同时说“我理解为穿山甲,对吗? ”。用户回答“不对”。机器人将其眼睛闪烁红光一次并启动帮助辅助,同时移动其手臂:“pangolin,spider,rabbit,或horse 你也可以在我的触觉传感器帮助下选择答案。你最喜欢什么动物?”,然后它返回到聆听模式。用户然后按在前部触觉传感器上,机器人使其眼睛闪烁蓝光一次并说“pangolin”。接下来,用户再次按下,机器人回答“spider”,同时使其眼睛闪烁蓝光一次。机器人第三次说“rabbit”,其眼睛闪烁蓝光。用户然后按下中央的触觉传感器以确认其选择。机器人使其眼睛闪烁绿光一次,然后重复“rabbit”并退出框和行为。机器人通信通道之间的其他交互是可能的,例如下文中所述那些。选择框以有利地方式使用语音识别,结合触觉传感器,以便识别用户的选择。另ー种可能性是使用机器人的视觉,尤其`是图像识别。这是目标识别而不是概念识别:如果它被示为瓶子,它将识别这同一牌子而不是另ー个牌子的。开发软件在其版本中使其能够实施本发明的可能性之一是在这个软件中具有机器人的摄像头返回。用户能够显示机器人对象,看到在Choregraphe中获得的图像,并在手边识别图像中感兴趣的对象。用户为其命名。机器人然后分析对象并在其图像的数据库中存储它。用户然后能够使用这些图像作为选择框的可能选择。例如,如果用户希望利用对象名称填写选择框,例如“瓶子”、“杯子”、“杂志”。它利用这些单词填写选择框,然后拿瓶子、他最喜欢的杯子和杂志的封面,井向机器人展示它们,使其如前所述分析它们。选择框然后在整个机器人的图像数据库中捜索:如果存在表示为“杯子”的对象,NAO然后在用户听到的同时搜索它,对另一个单词这样做等等。于是,用户启动其在NAO上的这个框,聆听其选择。用户说“瓶子”,但机器人不理解。在两次之后,机器人解释其能够为他显示“瓶子”、“杯子”和“杂志”,因为它们在它的数据库中。用户能够在聆听的同时显示用于记录(或同一牌子)的瓶子。机器人然后如同已识别单词“瓶子”那样行动。在本发明的框架之内,还能够对机器人编程使其充当用于接收/阅读、书写/发送以及管理机器人用户的消息帐户的代理。在下文中描述了本申请。利用邮件应用程序,NAO尤其能够阅读电子邮件,答复电子邮件或向联系人发送电子邮件,而且添加向联系人接收的邮件的作者,删除消息,将其标记为未读,重读它,阅读下ー个或前ー个消息。
在本申请中使用了三个选择框,于是使其成为不可缺少的元件。已经利用音频诊断选择了单词。在应用运行时,机器人通过查看用户是否接收到新消息而开始。如果是这样的话,它阅读第一个新消息,然后运行没有问题的选择框。如果不是,它运行这同一选择框,但具有问题:“你希望我做什么? ”。因此在邮件应用程序中利用了能够运行有或者没有问题的选择框的事实。这个选择框允许用户从NAO的可能动作中做出选择。这些动作是在框的插件表格中编写的。“超时”选择框输出是有用的,因为对于超时而言,NAO阅读下一个消息。然后将参数“无答复时的最大重复次数”设置为1:机器人在第一次超时时退出这个选择框。此外,使参数“重复确认的选择”无效,因为在用户选择之后,机器人运行特定的动画或动作,清楚地示出了它理解了什么。利用布尔型参数“激活头部”、“激活手臂”和“激活腿”,将利用针对其宣告调节的动画激励机器人。例如,这个框的可能选择是:-记录答复/对这个邮件的答复/对邮件的答复/答复;-再次阅读/重读这个邮件/重读邮件/重读;-下一个/阅读下一个/阅读下一个邮件;-前一个/阅读前一个邮件/阅读前一个消息;-标记为未读/保持/稍后重读;-删除/删除邮件/删除消息;-写邮件/发送邮件/发送;-添加到联系人;-退出/离开/通过/停止/停止/取消/安静:“退出”是选择框的默认选择之一,使得这里能够退出邮件应用程序。如果用户选择“写邮件”选项,他必须首先从其地址薄选择联系人。为了执行这个选择功能,使用具有问题“你希望给谁写信? ”的选择框。选择的列表是可变的。因此,未填充选择框的表格,从保存它的文件检索联系人列表并发送到动态型选择框的“choicesList”输入。此时,激活参数“重复确认的选择”,以向用户指出NAO确实理解了向谁发送消息。例如,将参数“无答复时最大重复次数”设置为3,即其默认值,以便在超时的情况下不向任何人发送邮件,但确实能够取消邮件的发送并返回主菜单。同样地,说“退出”,即应用的默认选择,使得能够返回到主菜单。帮助功能用于用户不再记得其联系人的情况下。在这种情况下,利用触觉传感器,例如,NAO指出联系人的列表。假设在这种直接发送邮件的情况下,或者在答复所接收的消息的情况下,机器人将记录用户的消息。一旦完成了消息,机器人重读记录的消息,然后启动选择框,其例如提出以下各种交互作用:-重放它/重放消息/重放我的消息:NA0重读消息。-重新记录消息/重新记录我的消息/重新记录它:如果第一个不适合,可以重新记录消息;-不要发送它/不要发送/不要发送消息:NA0将不会发送消息,然后将返回到应用的先前层次;-发送它/发送消息/发送我的消息:NA0将发送消息;-在超时的情况下,发送消息;-在从不超时的框“其他”退出的情况下,例如利用重复请求退出或失败,应用返回到先前的水平。參数与主菜单的选择框基本相同,将參数“无答复时的最大重复次数”设置为I。例如,可以将表示机器人将多少次无答复之后视为超时的參数“语音识别超吋”和“确认时语音识别超吋”设置为4秒而非默认的6秒,使得用户能够容易什么都不说而让消息发送。也可以在静态方式中利用在使用框期间为常数的配置选择框。但在使用系统自动产生问题的范围内,可以自动调节參数。例如,在使用诸如Angel公司开发的对话代理的范围之内,所述代理能够根据其将自动产生的问题-答案配置选择框。已经为Choregraphe的行为开发软件做出了其他改善,尤其是便于实施本发明。在下文中给出了其描述。利用支持的程序设计语言之一的脚本来实施Choregraphe框。如果这个框具有特定的可參数化方面,例如重复次数,直接将机器人使用的语言、机器人必须要讲的文本、这些条信息集成到框的脚本中。在希望修改框的參数时,例如在复制它以便以不同方式使用其之后,必须要修改框中的脚本以便改变其行为。由于这是普通的操作,对所用脚本语言没有透彻了解的用户希望执行该操作,还改善Choregraphe用户的生产率,已经开发了专用接ロ以便能够配置框的脚本。这个功能有两个方面。在Choregraphe接口中,用户具有在窗口中与其能够为框创建输入和输出以相同方式创建“框參数”的可能性,用于编辑框的属性。每个“框參数”具有名称、描述、类型(布尔型、整型、浮点和字符串)并作为类型的函数,具有额外属性,例如默认值。最后,可以将“框參数”定义为从父框继承,这将影响将确定值的方式。一旦已经定义了 “框參数”,就在其图表中显示该框,在其左下角具有额外的视觉指示器。当用户在这个图标上点击时,“框參数”编辑会话打开,用户能够在“框參数”属性中定义的任选约束的范围之内,定义与每个“框參数”相关联的值。在框的脚本中,框的作者今后能够借助于几种功能,以“框參数”的名称作为变量,访问“框參数”。它能够參考“框參数”的当前值并改变它。它还能够创建动态的“框參数”,这将不出现在Choregraphe中,但其将能够充当框脚本中的暂时存储器。參数的当前值取决于将其标记为从父框继承与否的事实。如果不是这样(默认情況),“框參数”对于框是特有的,在框的脚本咨询它时,简单地返回其当前值。如果其被标记为继承,在阅读其值期间,在框图表的分级结构内返回,直到找到包含同名“框參数”的父框为止。如果未发现任何结果,使用当前框的当前值。此外,机器人可以使用软件模块,允许其识别进入其摄像头视场的对象。不过,必须首先在学习阶段中学习要识别的对象。这种学习是在Choregraphe中专用接ロ的帮助下进行的。这个接ロ实时显示由机器人的摄像头发送的视频。仅在Choregraphe连接到具有摄像头和正确配置的视频拍摄模块时才有图像。在激活视频显示器时,用户能够触发学习。图像上然后出现递减计数,用户然后具有例如4秒以在摄像头前呈现对象。在递减计数结束时,拍摄并记录图像。用户然后必须通过在固定图像上绘制多边形来勾勒出图像中的研究对象。一旦多边形闭合,会话打开,要求用户输入定义对象的关键字。每次学习都在数据库中产生条目,由Choregraphe保存在用户的计算机上。一旦完成学习,按钮使得能够向机器人发送数据库的削减版本。对象识别模块然后将使用这个数据库,然后识别对象,将在机器人上触发包含关联关键字的事件。Choregraphe还是机器人行为的编辑器。如上文作为图4的注释所述,行为是类似于计算机程序的对象,可以由机器人执行。为了在机器人上安装并执行这些行为,已经开发了一种接口用于管理机器人上的行为。在Choregraphe连接到机器人时,应用菜单的条目使得能够显示行为管理器。这是一种模式窗口,显示机器人上安装的行为列表以及一组用于操纵它们的按钮。对于每个安装的行为,显示其名称、其状态(正在执行否)以及定义启动机器人时是否必须执行行为的属性。为了启动/停止行为,点击显示其当前状态的图标就足够了,其效果是来回切换状态。一旦完成了行为,状态就自动切换到“已停止”。属性“启动时开始”是要勾选的框。它表示属性的当前值,用户能够简单地在其上点击以改变这个值。行为列表旁边并排显示的按钮使得能够增加一些、删除一些以及向用户的计算机转移一些。用户然后能够非常容易地操作机器人上安装的行为,如同它们是其计算机上的文件那样。具体而言,用户能够下载行为,修改它并在机器人上安装它,无需在其计算机上记录它。然后能够在时间相干性的约束下,在各种行为框、行为帧和时间线定义的行为之间,并行地执行用户安装的行为。通过例示本发明的实施例给出了上文描述的范例。它们不以任何方式限制本发明的范围,其范围是由随后的权利要求界定的。
权利要求
1.一种类人机器人,包括至少两个通道和控制模块,所述至少两个通道用于根据不同的模态与至少ー个对话人(541, 542)自然传送消息(521,522,523,531,532,533),所述至少两个通道均是从包括接收通道、发送通道的ー组通道选择的,所述控制模块(510)用于所述通道的输入/输出,其中所述控制模块被配置成基于执行从ー组功能选择的至少ー个功能改善对所述机器人接收的消息的理解,所述ー组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能。
2.根据权利要求1所述的类人机器人,其中所述通信通道是从ー组用于发送和/或接收听觉、视觉、触觉、姿态、位置或符号消息的通信通道选择的。
3.根据权利要求2所述的类人机器人,其中第一通信通道是声音发送通道,第二通信通道是用于由所述至少一个对话人从所述机器人的至少ー个部分接收姿态和/或位置的通道,所述姿态和/或位置代表所述对话人向所述机器人传送的输入,所述输入的规格由所述机器人通过在所述第一通道上发送的消息向所述对话人定义。
4.根据权利要求3所述的类人机器人,还包括第三触觉通信通道,其中所述对话人通过所述第三触觉通信通道验证进入所述第二通道的输入。
5.根据权利要求2所述的类人机器人,其中第一通信通道是用于接收声音消息的通道,第二通信通道是用于发送声音消息的通道,并且所述控制模块能够评估所述机器人对所述第一通道上接收的第一消息理解的置信水平,并在所述第二通道上产生其内容取决于所述置信水平的至少ー个第二消息。
6.根据权利要求5所述的类人机器人,其中所述第一通道包括过滤器,用于对表达列表接收的消息进行语音识别,每个表达与预期识别率相关联,并且所述第二消息的内容是通过从ー组请求启发而选择的,所述ー组请求包括重复所述第一通道上的所述第一消息的请求、由所述对话人要在所述第一通道上发送的第三消息来确认所述过滤器的所述表达的子集的请求、以及由所述对话人至少在第三通道上发送至少另ー个消息的请求。
7.根据权利要求6所述的类人机器人,还被配置成在所述第二通道上发送在所述第一通道上开始聆听的信号,以便确保在半双エ模式中对所述第一通道和所述第二通道上的消息进行排序。
8.根据权利要求6所述的类人机器人,其中所述选择启发是实际识别率相对于基于预期识别率确定的阈值的位置的函数。
9.根据权利要求6所述的类人机器人,其中所述第三通道是用于触觉接收的通道或用于从所述机器人的一部分接收姿态的通道。
10.根据权利要求5-9所述的类人机器人,还包括用干与电子邮件系统连接的模块,所述连接模块允许所述电子系统上的账户的持有者使用所述机器人作为代理,以在所述第二通道上接收/阅读电子消息,在所述第一通道上书写/发送并利用所述第一通道和所述第二通道通过对话管理所述账户。
11.根据权利要求6所述的类人机器人,其中所述第三通道是用于对与所述第一通道的过滤器的表达列表对应的对象的图像进行视觉接收,所述图像与利用所述表达先前记录的所述对象的图像的数据库进行比较,所述数据库能够由所述控制模块访问,用于所述通信通道的输入/输出。
12.根据权利要求2所述的类人机器人,其中第一通信通道是用于接收视觉消息的通道,第二通信通道是用于发送声音消息的通道,并且所述控制模块能够评估所述机器人对所述第一通道上接收的第一消息理解的置信水平,并在所述第二通道上产生其内容取决于所述置信水平的至少一个第二消息。
13.根据权利要求12所述的类人机器人,其中所述第一通道包括过滤器,用于识别表达列表接收的消息的图像,每个表达与预期识别率相关联,并且所述第二消息的内容是通过从一组请求启发而选择的,所述一组请求包括重复所述第一通道上的所述第一消息的请求、由所述对话人在用于接收所述过滤器的所述表达的子集的声音消息的第三通道上发送的第三消息进行确认的请求、以及由所述对话人至少在第四通道上发送至少另一个消息的请求。
14.根据权利要求1-13之一所述的类人机器人,其中所述通道中的至少一个是混合通道,所述混合通道接收由所述控制模块合并的两个通道的输出作为输入,以用于输入和输出。
15.一种控制类人机器人与至少一个对话人通信的方法,包括通信通道使用不同的模态进行消息传送的至少两个步骤,所述两个步 骤均是从包括从接收通道、发送通道的一组通道中选择的,及控制所述通道的输入/输出的步骤,其中所述控制步骤被配置成基于执行从一组功能选择的至少一个功能改善对所述机器人接收的消息的理解,所述一组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能。
16.一种包括程序代码指令的计算机程序,在计算机上执行所述程序时允许执行根据权利要求15所述的方法,所述程序被配置成允许类人机器人根据不同的模态与至少一个对话人自然传送消息,所述类人机器人包括至少两个通道和子例程,所述至少两个通道均是从包括从接收通道、发送通道的一组通道选择的,所述子例程用于所述通道的输入/输出,其中控制子例程被配置成基于执行从一组功能选择的至少一个功能改善对所述机器人接收的消息的理解,所述一组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能。
17.一种编辑和控制至少一个类人机器人和至少一个对话人之间通信接口的方法,所述至少一个类人机器人包括至少两个通道和控制模块,所述通道用于根据不同的模态与至少一个对话人自然传送消息,所述至少两个通道均是从包括接收通道、发送通道的一组通道选择的,所述控制模块用于所述通道的输入/输出,其中所述控制模块被配置成基于执行从一组功能选择的至少一个 功能改善对所述机器人接收的消息的理解,所述一组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能,还包括编程所选功能的步骤。
18.根据权利要求17所述的编辑和控制方法,其中编程所述所选功能的步骤包括如下至少一个子步骤:利用声音发送通道定义第一通信通道,利用用于接收所述至少一个对话人在机器人肢体上施加的至少一个姿态的通道定义第二通信通道,定义所述至少一个姿态和所述对话人向机器人传送的输入之间对应关系的子步骤,以及通过产生要由机器人在所述第一通道上发送到所述对话人的至少一个消息来定义所述输入的规格的子步骤。
19.根据权利要求18所述的编辑和控制方法,还包括定义第三触觉通信通道由此所述对话人验证在所述第二通道上执行的输入的子步骤。
20.根据权利要求18-19之一所述的编辑和控制方法,其中,通过至少一个控制框执行其步骤,其中要由所述机器人执行的主动作帧链接到从在先事件和要编程的动作之后的后继事件的组中选择的至少一个事件,并且其被编程为根据时间线预定义的临时约束进行。
21.根据权利要求17所述的编辑和控制方法,其中编程所述所选功能的步骤包括如下至少一个子步骤:利用用于接收声音消息的通道定义第一通信通道,利用用于发送声音消息的通道定义第二通信通道,定义用于评估所述机器人对在所述第一通道上接收的第一消息理解的置信水平的功能的子步骤,以及定义在所述第二通道上产生其内容取决于所述置信水平的至少一个第二消息的子步骤。
22.根据权利要求21所述的编辑和控制方法,其中,所述方法还包括定义用于语音识别由表达列表在第一通道上接收的消息的过滤器的子步骤,其中每个表达与期望识别率相关联,以及通过从包括重复第一信道上的第一消息的请求、要由对话人在过滤器的表达的子集的第一通道上发送的第三消息确认的请求、由对话人在至少一个第三信道上发送至少一个其它消息的请求的一组请求选择的启发而定义第二消息的内容的子步骤。
23.根据权利要求21至22之一所述的开发的方法,其中,通过至少一个控制框执行其步骤,其中要由所述机器人执行的主动作帧链接到从在先事件和要编程的动作之后的后继事件的组中选择的至少一个事件,并且其被编程为根据时间线预定义的临时约束进行,所述控制框是选择类型的框。
24.一种包括程序代码指令的计算机程序,在计算机上执行所述程序时,用于执行根据权利要求17所述的方法,所述程序被配置成允许用户编程类人机器人,所述类人机器人包括至少两个通道和子例程,所述至少两个通道用于根据不同的模态与至少一个对话人自然传送消息,所述至少两个通道均是从包括接收通道、发送通道的一组通道选择的,所述子例程用于所述通道的输入/输出,其中所述子例程中用于编程的模块用于控制要由机器人执行并从一组功能选择的至少一个功能,所述一组功能包括组合第一通道和第二通道上接收/发送的消息的功能以及发送基于在通道上接收的第一消息产生的第二消息的功能。
25.根据权利要求24所述的计算机程序,还包括用于编程将至少一个参数传送到控制框的模块。
26.根据权利要求24所述的计算机程序,其中,所述计算机程序还包括用于以所述程序的接口编程机器人的视觉通信通道的输入的返回的模块。
27.根据权利要求24所述的计算机程序,其中,所述计算机程序还包括用于编程并行进行的机器人行为的模块。
全文摘要
本发明涉及一种类人机器人,其装备有用于与对话人自然对话的接口。在现有技术中,还装备有演进的位移功能的类人机器人和人类之间的对话模态特别受到能够在板嵌入所述机器人中的语音和视觉识别处理能力的限制。本发明为所述机器人装备了如下能力解决它们接收的消息通信的几种模态的疑惑,组合这些模态,从而能够大大改善与机器人的对话人对话的质量和自然特性。本发明还提供了简单而用户友好的手段,用于执行功能的编程,使其能够确保这些多模对话的流畅性。
文档编号G10L15/22GK103119644SQ201180045189
公开日2013年5月22日 申请日期2011年7月11日 优先权日2010年7月23日
发明者B·迈索尼耶, J·蒙索 申请人:奥尔德巴伦机器人公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1