CN117021114A - 机器人的控制方法及装置 - Google Patents

机器人的控制方法及装置 Download PDF

Info

Publication number
CN117021114A
CN117021114A CN202311246211.9A CN202311246211A CN117021114A CN 117021114 A CN117021114 A CN 117021114A CN 202311246211 A CN202311246211 A CN 202311246211A CN 117021114 A CN117021114 A CN 117021114A
Authority
CN
China
Prior art keywords
text
instruction
robot
environment map
task
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.)
Pending
Application number
CN202311246211.9A
Other languages
English (en)
Inventor
吴若溪
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.)
Beijing Opper Communication Co ltd
Original Assignee
Beijing Opper Communication Co ltd
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 Beijing Opper Communication Co ltd filed Critical Beijing Opper Communication Co ltd
Priority to CN202311246211.9A priority Critical patent/CN117021114A/zh
Publication of CN117021114A publication Critical patent/CN117021114A/zh
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

本申请公开了一种机器人的控制方法及装置,其中,在获取到用户输入的待处理文本的情况下,解析待处理文本,得到至少一个指令文本;获取预设区域内的真实物理环境对应的仿真环境地图;基于指令文本和仿真环境地图确定机器人在仿真环境地图上完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令;控制机器人依序执行各个任务指令。本申请能够降低高级语言的待处理文本处理转换为任务指令的复杂度,从而提高控制机器人的准确性。

Description

机器人的控制方法及装置
技术领域
本申请涉及人工智能技术领域,具体涉及一种机器人的控制方法及装置。
背景技术
现有随着智能机器人在室内家庭场景中的应用,对其智能化要求越来越高,例如智能导航、智能陪伴、智能服务等。但现有机器人主要依靠机器任务指令进行驱动,而用户输入的大多为高级语言文本,但是高级语言文本中的指令较为复杂,导致对机器人控制的准确率不高。
也即,现有技术中对机器人控制的准确率较低。
发明内容
本申请实施例提供一种机器人的控制方法及装置,可以提高对机器人控制的准确率。
第一方面,本申请提供的机器人的控制方法,包括:
在获取到用户输入的待处理文本的情况下,解析所述待处理文本,得到至少一个指令文本;
获取预设区域内的真实物理环境对应的仿真环境地图;
基于所述指令文本和所述仿真环境地图确定所述机器人在所述仿真环境地图上完成所述指令文本需要进行的任务指令,得到各个所述指令文本对应的各个所述任务指令;
控制所述机器人依序执行各个所述任务指令。
第二方面,本申请提供的机器人的控制装置,包括:
解析模块,用于在获取到用户输入的待处理文本的情况下,解析所述待处理文本,得到至少一个指令文本;
获取模块,用于获取预设区域内的真实物理环境对应的仿真环境地图;
确定模块,用于基于所述指令文本和所述仿真环境地图确定所述机器人在所述仿真环境地图上完成所述指令文本需要进行的任务指令,得到各个所述指令文本对应的各个所述任务指令;
控制模块,用于控制所述机器人依序执行各个所述任务指令。
第三方面,本申请提供的电子设备,包括存储器和处理器,存储器存储有计算机程序,处理器用于运行存储器内的计算机程序,实现本申请所提供的机器人的控制方法中的步骤。
第四方面,本申请提供的计算机可读存储介质,存储有多条指令,该指令适于处理器进行加载,实现本申请所提供的机器人的控制方法中的步骤。
第五方面,本申请提供的计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现本申请所提供的机器人的控制方法中的步骤。
本申请中,相较于相关技术,在获取到用户输入的待处理文本的情况下,解析待处理文本,得到至少一个指令文本;获取预设区域内的真实物理环境对应的仿真环境地图;基于指令文本和仿真环境地图确定机器人在仿真环境地图上完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令;控制机器人依序执行各个任务指令。本申请先将待处理文本处理分解为至少一个指令文本,然后再结合仿真环境地图将指令文本映射为可以机器人在仿真环境地图执行的任务指令,从而可以将用户输入的高级语言的待处理文本处理分解为指令文本,然后再映射为机器人直接可以执行的任务指令,能够降低高级语言的待处理文本处理转换为任务指令的复杂度,从而提高控制机器人的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的机器人的控制***的场景示意图;
图2是本申请实施例提供的机器人的控制方法的一个实施例的流程示意图;
图3是本申请实施例提供的机器人的控制方法的一个实施例中多个仿真环境环境的示意图;
图4是本申请实施例提供的机器人的控制方法的一个实施例中仿真环境环境在机器人执行任务指令前后变化的示意图;
图5是本申请实施例提供的机器人的控制方法的一个实施例中生成执行视频的示意图;
图6是本申请实施例提供的机器人的控制方法的一个实施例中预设训练集的示意图;
图7是本申请实施例提供的机器人的控制方法的一个实施例中在预设大规模语言模型上增加旁路模块以及融合模块的示意图;
图8是本申请实施例提供的机器人的控制方法的一个实施例中训练预设文本解析模型的示意图;
图9是本申请实施例提供的机器人的控制方法的另一个实施例的流程示意图;
图10是本申请实施例提供的机器人的控制方法的另一个实施例中提示模板的示意图;
图11是本申请实施例提供的机器人的控制装置的一个实施例的结构示意图;
图12是本申请实施例提供的电子设备的结构示意图。
具体实施方式
需要说明的是,本申请的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本申请具体实施例,其不应被视为限制本申请未在此详述的其他具体实施例。
本申请以下描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
本申请以下描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
为了能够提高机器人控制的准确度,本申请实施例提供一种机器人的控制方法、机器人的控制装置、电子设备、计算机可读存储介质以及计算机程序产品。其中,机器人的控制方法可由机器人的控制装置执行,或者由集成了该机器人的控制装置的电子设备执行。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参照图1,本申请还提供一机器人的控制***,如图1所示,该机器人的控制***包括电子设备100和与电子设备100连接的机器人300,电子设备100中集成有本申请提供的机器人的控制装置。
其中,电子设备100可以是任何配置有处理器而具备处理能力的设备,比如智能手机、平板电脑、掌上电脑、笔记本电脑、智能音箱等具备处理器的移动式电子设备,或者台式电脑、电视、服务器、工业设备等具备处理器的固定式电子设备。
另外,该机器人的控制***还可以包括存储器200,用于存储原始数据、中间数据以及结果数据。
本申请实施例中,存储器可以是云存储器,云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储***(以下简称存储***)是指通过集群应用、网格技术以及分布存储文件***等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储***。
目前,存储***的存储方法为:创建逻辑卷,在创建逻辑卷时,就为每个逻辑卷分配物理存储空间,该物理存储空间可能是某个存储设备或者某几个存储设备的磁盘组成。客户端在某一逻辑卷上存储数据,也就是将数据存储在文件***上,文件***将数据分成许多部分,每一部分是一个对象,对象不仅包含数据而且还包含数据标识(ID,ID entity)等额外的信息,文件***将每个对象分别写入该逻辑卷的物理存储空间,且文件***会记录每个对象的存储位置信息,从而当客户端请求访问数据时,文件***能够根据每个对象的存储位置信息让客户端对数据进行访问。
存储***为逻辑卷分配物理存储空间的过程,具体为:按照对存储于逻辑卷的对象的容量估量(该估量往往相对于实际要存储的对象的容量有很大余量)和独立冗余磁盘阵列(RAID,Redundant Array of Independent Disk)的组别,预先将物理存储空间划分成分条,一个逻辑卷可以理解为一个分条,从而为逻辑卷分配了物理存储空间。
需要说明的是,图1所示的机器人的控制***的场景示意图仅仅是一个示例,本申请实施例描述的机器人的控制***以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着机器人的控制***的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
以下分别进行详细说明。需说明的是,以下实施例的序号不作为对实施例优选顺序的限定。
请参照图2,图2是本申请实施例提供的机器人的控制方法的一个实施例的流程示意图,如图2所示,本申请提供的机器人的控制方法的流程如下:
201、在获取到用户输入的待处理文本的情况下,解析待处理文本,得到至少一个指令文本。
其中,待处理文本为用户输入的属于自然语言的文本。自然语言是一种用于人类交流的自然形成的语言,它由一系列的音素,词汇,句法和语义组成,可以被人类或其他生物理解和使用。自然语言有很多种类,比如中文,英文,法文等。自然语言的优点是表达丰富,灵活多变,缺点是规则复杂,不一致性多。
其中,待处理文本可以为中文,英文,法文等各类语言的文本。例如,待处理文本“从冰箱拿一瓶牛奶”。用户输入待处理文本希望机器人能够听懂“从冰箱拿一瓶牛奶”并执行该指令。
其中,指令文本为机器人可以理解并执行的低级语言指令,指令文本可以直接输入机器人由机器人执行。至少一个指令文本为机器人完成待处理文本所表达的意图而需要执行的一系列指令文本。可选地,可以将处理文本分解为至少两个指令文本,解析待处理文本,得到的指令文本数量越多,控制机器人越准确。例如,待处理文本为“从冰箱拿一瓶牛奶”,经过解析,得到6个指令文本,6个指令文本分别为:“{find}<milk>”、“{walk}<milk>”、“find}<fridge>”、“{open}<fridge>”、“{grab}<milk>”、“{open}<fridge>”。
在一个具体的实施例中,提取待处理文本中的关键词,根据提取的关键词在预设指令文本库内查找匹配的指令文本,得到至少一个指令文本。
在另一个具体的实施例中,基于预设训练集预先训练预设文本解析模型,基于预设文本解析模型对解析待处理文本,得到至少一个指令文本。预设文本解析模型可以为各类神经网络模型,在此不做限定。通过预设文本解析模型对待处理文本进行语义分析,相较于关键词匹配的方式能够更准确的提取待处理文本中的用户意图,从而得到更准确的指令文本,提高控制机器人的准确性。
202、获取预设区域内的真实物理环境对应的仿真环境地图。
其中,仿真环境地图为预设区域内的三维电子地图,就是以三维电子地图数据库为基础,按照一定比例对现实世界或其中一部分的一个或多个方面的三维、抽象的描述。网络三维电子地图不仅通过直观的地理实景模拟表现方式,为用户提供地图查询、出行导航等地图检索功能,同时集成生活资讯、电子政务、电子商务、虚拟社区、出行导航等一系列服务。
其中,可以控制机器人在预设区域的真实物理环境中通过激光雷达避开障碍物,通过机器人自带摄像头360度扫描预设区域的真实物理环境中的各个物体。利用同步定位与建图(Simultaneous Localization and Mapping,简称SLAM)算法建立预设区域内的真实物理环境对应的仿真环境地图。SLAM可以描述为:机器人在未知环境中从一个未知位置开始移动,在移动过程中根据位置和地图进行自身定位,同时在自身定位的基础上建造增量式地图,实现机器人的自主定位和导航。
其中,仿真环境地图上标识有预设区域内的各个物体和各个物体之间的关系。其中,仿真环境地图上各个物体和各个物体之间的关系可以用知识图谱。知识图谱上各个点表示的是每个物体的信息,知识图谱上各个边表示的是各个物体之间相互关系。其中每个节点对应的物体属性信息都包含:物体的索引、类别、当前状态、物体的检测框、物体的3D信息等,其中,物体的当前状态主要有以下几种状态:open、closed、on、in。
本申请实施例中,预设区域内的真实物理环境对应的仿真环境地图的数量可以多个,预设区域内的真实物理环境对应的多个仿真环境地图用于供机器人在不同的场景下执行指令文本。如图3所示,本申请模拟了6个不同的仿真环境地图,图3中的6个不同的仿真环境地图涉及的场景类别主要有:导航移动、家庭管理、陪伴、娱乐、日常用户活动。
203、基于指令文本和仿真环境地图确定机器人在仿真环境地图上完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令。
本申请实施例中,指令文本为目标动作和目标动作作用的目标物体。例如,其中一个指令文本为:{walk}<milk>,目标动作为{walk},目标物体为milk,即移动至目标物体milk的位置。
由于模型的指令输出与仿真的输入可能无法完全统一,故需要进行指令映射,需要将指令文本与仿真环境地图进行对齐。在一个具体的实施例中,基于指令文本和仿真环境地图确定机器人在仿真环境地图上完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令,包括:
(1)获取机器人在仿真环境地图上的机器人属性信息和目标物体在仿真环境地图上的物体属性信息。
在一个具体的实施例中,机器人属性信息包括机器人在仿真环境地图上的位置、机器人的状态等等;目标物体在仿真环境地图上的物体属性信息包括:目标物体在仿真环境地图上的位置、当前状态等。
例如,机器人属性信息为机器人的机器人位置,目标物体在仿真环境地图上的物体属性信息为目标物体在仿真环境地图上的目标物***置。
(2)基于机器人在仿真环境地图上的机器人属性信息、目标物体在仿真环境地图上的物体属性信息以及目标动作确定指令文本对应的任务指令。
在一个具体的实施例中,机器人属性信息为机器人的机器人位置,目标物体在仿真环境地图上的物体属性信息为目标物体在仿真环境地图上的目标物***置,目标动作为walk。根据目标动作确定指令文本需要执行的导航任务,则指令文本对应的任务指令为:在仿真环境地图上将机器人从机器人位置导航移动至目标物***置。
例如,指令文本为:{walk}<milk>,将指令文本映射为任务指令,得到任务指令为:<char()>{walk}<milk>。任务指令为:<char()>{walk}<milk>,表示在仿真环境地图上将机器人从机器人位置导航移动至milk所在的位置。
在一个具体的实施例中,待处理文本为“从冰箱拿一瓶牛奶”,经过解析,得到6个指令文本,6个指令文本分别为:“{find}<milk>”、“{walk}<milk>”、“{find}<fridge>”、“{open}<fridge>”、“{grab}<milk>”、“{open}<fridge>”。基于指令文本和仿真环境地图确定机器人在仿真环境地图上完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令,对应6个任务指令分别为:“<char()>{find}<milk>”、“<char()>{walk}<milk>”、“<char()>{find}<fridge>”、“<char()>{open}<fridge>”、“<char()>{grab}<milk>”、“<char()>{open}<fridge>”。
由于有可能解析出的指令文本机器人无法执行出现紊乱,为了避免出现这种情况,在一个具体的实施例中,在各个指令文本中的各个目标动作均属于预设动作集合的情况下,基于指令文本和仿真环境知识图谱确定机器人在仿真环境地图完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令。
其中,预设动作集合可以预先设置,例如,预设动作集合可以包括{walk}、{grab}、{lie}、{read}。在各个指令文本中的各个目标动作均属于预设动作集合时,表明在各个指令文本均为机器人可以执行的动作,此时再基于指令文本和仿真环境知识图谱确定机器人在仿真环境地图完成指令文本需要进行的任务指令,能够避免解析出的指令文本机器人无法执行出现紊乱。
进一步的,在各个指令文本中的各个目标物体的位置均位于预设区域内时,表明目标物体是机器人在预设区域内可以获取到的,此时再基于指令文本和仿真环境知识图谱确定机器人在仿真环境地图完成指令文本需要进行的任务指令,能够避免解析出的指令文本机器人无法执行出现紊乱。
本申请模拟了6个不同的仿真环境地图,图3中的6个不同的仿真环境地图涉及的场景类别主要有:导航移动、家庭管理、陪伴、娱乐、日常用户活动。
在一个具体的实施例中,获取各个指令文本的场景类别,若各个指令文本的场景类别属于同一场景类别,则各个指令文本的场景类别对应的仿真环境地图,基于指令文本和仿真环境地图确定机器人在仿真环境地图上完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令。
在另一个具体的实施例中,获取用户设置的场景类别对应的仿真环境地图,基于指令文本和用户设置的场景类别对应的仿真环境地图确定机器人在仿真环境地图完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令。
204、控制机器人依序执行各个任务指令。
进一步的,在获取各个任务指令之后,需要机器人调用各类应用或者服务在仿真环境地图上执行任务指令。
具体的,指令文本包括目标动作和目标动作作用于的目标物体。指令文本为移动至目标物体,将指令文本映射为任务指令之后,机器人的目标动作为移动,则需要执行的任务为导航任务和移动任务。控制机器人调用各类导航应用在仿真环境地图规划移动至目标物体的移动路径,以完成导航任务。控制机器人调用操纵模块在仿真环境地图根据移动路径移动至目标物体,以完成移动任务,从而完成任务指令。
例如,其中一个任务指令为:<char()>{walk}<milk>,目标动作为{walk},目标物体为milk,则机器人需要先在仿真环境地图上获取自身位置和物体milk的位置,然后执行导航任务得到行驶至物体milk的移动路径,最后执行移动任务根据移动路径移动至物体milk。
如图4所示,图4中上半部分是预设区域内仿真环境地图的当前状态图,待处理文本为“turn on tv and turn light off”,解析待处理文本,得到至少一个指令文本,控制机器人依序执行各个任务指令,以完成至少一个指令文本。控制机器人依序执行各个任务指令之后,预设区域内仿真环境地图的状态图如图4下半部分所示。
本申请实施例中,机器人的控制方法还包括:在控制机器人依序执行各个任务指令的过程中控制机器人拍摄得到执行视频;在控制机器人依序执行各个任务指令之后,输出执行视频。
参阅图5,用户输入待处理文本“找到bananas的存放的地方,并将bananas putinthe fridge”,解析待处理文本,得到至少一个指令文本,控制机器人依序执行各个任务指令,以完成至少一个指令文本。在控制机器人依序执行各个任务指令的过程中控制机器人拍摄得到执行视频;在控制机器人依序执行各个任务指令之后,输出执行视频。
在一个具体的实施例中,解析待处理文本,得到至少一个指令文本,包括基于预设文本解析模型解析待处理文本,得到至少一个指令文本。
本申请实施例中,预设文本解析模型包括预设大规模语言模型、旁路模块以及融合模块。其中,预设大规模语言模型为Chatglm-6b。GLM模型是清华大学推出的框架,采用Chatglm-6b这个模型,其是基于Transformer模型进行的改造,采用了自编码和自回归的双向思想,将问题转化为完形填空求解,其参数量级是62亿参数量,通过1T双语的语料作为训练数据集,优化了中文的问答和对话,目前该模型已经可以生成符合人类偏好的回答。当然,在其他实施例中,预设大规模语言模型也可以为ChatGPT系列或者LLama系列的模型,根据具体情况确定即可。
在一个具体的实施例中,基于预设文本解析模型解析待处理文本,得到至少一个指令文本,之前,包括:在预设大规模语言模型增加旁路模块以及融合模块,得到初始语言模型;基于预设训练集训练初始语言模型,得到预设文本解析模型。其中,初始语言模型中预设大规模语言模型的参数在训练中不更新,初始语言模型中旁路模块的参数在训练中更新。具体的,旁路模块包括降维矩阵和升维矩阵,利用降维矩阵处理待处理文本,得到降维数据;利用升维矩阵处理升维数据,得到旁路输出数据。
其中,预设训练集为室内家庭场景机器人执行任务的语料数据。由于室内家庭场景机器人执行任务的语料数据基本没有公开数据集,所以需要自行设计构造语料数据集,得到预设训练集。本申请构造了6个室内家庭场景环境,同时构造了12个大类的室内家庭的语料类型,包括:闲暇、工作、房间打扫、房间安排、准备食材、卫生、社交、饮食、活动、睡眠、准备工作等,构造了海量语料数据。
其中,预设训练集包括训练文本和对应的指令文本集,指令文本集包括至少一个指令文本。可选地,指令文本集包括至少两个指令文本。参阅图6,各个训练文本如图6中的语料任务列表所示,训练文本可以为“Read book”、“Watch tv”、“Listen to music”。训练文本和对应的指令文本集如图6中的语料格式所示。
例如,训练文本为“Read book”,对应的指令文本集包括多个指令文本,例如,指令文本集中多个指令文本分别为“1.{walk}<living_room>”、“2.{walk}<book>”、“3.{grab}<book>”、“4.{walk}<sofa>”、“5.{lie}<sofa>”、“6.{read}<book>”。
如图7所示,图7中左边是预设大规模语言模型的权重,输入输出维度都是d;x为经过处理的待处理文本,维度为d,W0为预设大规模语言模型的权重,我们可以通过低秩进行分解,其公式如(1)所示,其A和B是分解矩阵,A为降维矩阵,B为升维矩阵,降维矩阵A和升维矩阵B组成旁路模块。在训练的过程中,权重W0被冻结,不可梯度更新,但是降维矩阵A和升维矩阵B包含可以训练的参数,其前向传播公式如公式(2)所示。
W0+ΔW=W0+BA (1)
h=W0x+ΔWx=W0x+BAx (2)
其中,对降维矩阵A采用随机高斯分布进行初始化,对升维矩阵B采用零值进行初始化,所以,在模型训练初期其ΔW=BA值为零。r是矩阵的秩,会对ΔWx做缩放:α/r,其中α是r中的一个常数,h为融合模块融合数据后的输出。
在一个具体的实施例中,首先获取预设训练集,预设训练集的格式是json的格式;其次对预设训练集进行预处理将json数据转化为jsonl数据格式,同时将预设训练集中各个训练文本进行分词处理并保存数据;其次在chatGLM-6b大模型基础上进行微调,设置训练参数,保存训练模型,得到微调大规模语言模型。
GLM模型采用了既自编码又自回归的结构,类似完形填空的思想解决问题。自编码指随机的删除连续的tokens,自回归指可以访问预测的token,故该模型可以很好的理解上下文。
如图8所示,本申请实施例中,基于预设训练集训练初始语言模型,得到预设文本解析模型的步骤如下:
假设输入为[x1,x2,x3,x4,x5,x6]。我们进行符合泊松分布的不同跨度采样,即[x3]和[x5,x6]。将输入分为两个部分:Part A为x1,x2,[M],x4,x5,[M]],Part B为[x3]和[x5,x6]。Part A是损坏的文本xcorrupt,Part B是被遮盖的片段。Part A的词可以相互看到,但不能看到Part B中的任何词。Part B的词可以看到Part A和Part B中的前置词,但不能看到Part B中的后续词。
GLM自回归生成Part B部分。我们将Part A部分和Part B部分进行拼接,其中PartB部分中的每个跨度以[S]作为输入,并附加[E]作为输出。其这里采用了两个位置编码,其中2D位置编码1表示索引,对于B部分的跨度其对应掩模[M]标记位置;2D位置编码2表示跨度内的相对位置,故A部分中的标记他们均为0。
给定一个输入文本x=[x1,x2,x3,x4,x5.......xn],从中采样多个文本片段[s1,s2,s3,s4.......sm],其中每个片段si对应于x中的一系列连续的词。每个片段都用一个单独的[MASK]符号替换,形成一个损坏的文本xcorrupt。模型以自回归的方式从损坏的文本中预测缺失的词,这意味着在预测一个片段中的缺失词时,模型可以访问损坏的文本和之前预测的片段。为了充分捕捉不同片段之间的相互依赖关系,我们随机打乱片段的顺序,类似于排列语言模型。对泊松采样的集合即partB进行所有的排列组合,即为Zm为长度为m的索引序列[1,2,3......m]的所有可能排列的集合,则初始语言模型的目标函数如下所示,
其中,按照从左到右的顺序生成每个空白中的词,即生成片段si的概率pθ可以分解为如下格式,
根据目标函数迭代训练初始语言模型,在满足预设停止条件,得到预设文本解析模型。
本申请实施例中,基于预设文本解析模型解析待处理文本,得到至少一个指令文本,包括:
(1)利用旁路模块处理待处理文本,得到旁路输出数据。
本申请实施例中,旁路模块包括降维矩阵和升维矩阵,利用旁路模块处理待处理文本,得到旁路输出数据,包括:利用降维矩阵处理待处理文本,得到降维数据;利用升维矩阵处理升维数据,得到旁路输出数据。
(2)利用预设大规模语言模型处理待处理文本,得到模型输出数据。
(3)利用融合模块融合旁路输出数据和模型输出数据,得到至少一个指令文本。
请参照图9,图9是本申请实施例提供的机器人的控制方法的另一个实施例的流程示意图,如图9所示,本申请提供的机器人的控制方法的流程如下:
401、预设文本解析模型。
具体的,在预设大规模语言模型增加旁路模块以及融合模块,得到初始语言模型。基于预设训练集训练初始语言模型,得到预设文本解析模型。
其中,预设训练集包括多个训练文本和训练文本对应的指令文本集。指令文本集包含多个指令文本。训练文本是人类高级语言文本。指令文本是可以用于控制机器人的低级语言指令文本。
402、在获取到用户输入的用户输入数据时,判断用户输入数据是否为文本类型。
本申请实施例中,用户输入的用户输入数据可能为语音类型的数据、图片类型的数据以及文本类型的数据。用户可以通过聊天窗口输入用户输入数据。判断用户输入数据是否为文本类型,若用户输入数据为语音类型的数据,则对用户输入数据进行语音识别,得到待处理文本;若用户输入数据为图片类型的数据,则对用户输入数据进行图像识别,得到待处理文本;若用户输入数据为文本类型的数据,则将用户输入数据确定为待处理文本。
403、将用户输入数据确定为待处理文本并获取预先构造的提示模板。
本申请实施例中,若用户输入数据为文本类型的数据,则将用户输入数据确定为待处理文本。
其中,提示模板用于指示将待处理文本拆分为至少一个指令文本。提示模版即Prompt。在机器学习和自然语言处理领域,Prompt通常指用于生成文本或者语言模型训练的输入文本片段。Prompt可以是一个问题、一个主题、一段文字或者一组关键词,用于引导模型生成相关的文本。例如,在文本生成任务中,可以使用Prompt来指定生成文本的主题或者风格,以便生成更加符合要求的文本。在语言模型训练中,Prompt可以作为输入序列的一部分,用于指定模型需要学习的语言规律和上下文信息。
其中,预先构造的提示模板如图10所示,其中,图10中“从冰箱拿一瓶牛奶”为待处理文本,LLM为预设文本解析模型。
404、将提示模板和待处理文本输入预设文本解析模型,得到待处理文本对应的至少一个指令文本。
例如,待处理文本为“从冰箱拿一瓶牛奶”。将提示模板和待处理文本输入预设文本解析模型,得到待处理文本对应的至少一个指令文本。经过解析,得到6个指令文本,6个指令文本分别为:“1.{walk}<living_room>”、“2.{walk}<book>”、“3.{grab}<book>”、“4.{walk}<sofa>”、“5.{lie}<sofa>”、“6.{read}<book>”。
405、判断各个指令文本中的各个目标动作是否均属于预设动作集合。
本申请实施例中,判断各个指令文本中的各个目标动作是否均属于预设动作集合,若各个指令文本中的各个目标动作均属于预设动作集合,则执行406:判断各个指令文本中的各个目标物体的位置是否均位于预设区域。若各个指令文本中的各个目标动作不均属于预设动作集合,则发出提示信息。
例如,6个指令文本分别为:“<char()>{find}<milk>”、“<char()>{walk}<milk>”、“<char()>{find}<fridge>”、“<char()>{open}<fridge>”、“<char()>{grab}<milk>”、“<char()>{open}<fridge>”。6个指令文本中的目标动作分别为:“{find}”、“{walk}”、“{find}”、“{open}”、“{grab}”、“{open}”。
406、判断各个指令文本中的各个目标物体的位置是否均位于预设区域。
本申请实施例中,判断各个指令文本中的各个目标物体的位置是否均位于预设区域,若各个指令文本中的各个目标物体的位置均位于预设区域,表明各个指令文本均可执行,则执行407、基于指令文本和仿真环境知识图谱确定机器人在仿真环境地图完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令。若各个指令文本中的各个目标物体的位置不均位于预设区域,则发出提示信息。
例如,6个指令文本分别为:“<char()>{find}<milk>”、“<char()>{walk}<milk>”、“<char()>{find}<fridge>”、“<char()>{open}<fridge>”、“<char()>{grab}<milk>”、“<char()>{open}<fridge>”。6个指令文本中的目标物体作分别为:“{milk}”、“{milk}”、“{fridge}”、“{fridge}”、“{milk}”、“{fridge}”。
407、基于指令文本和仿真环境知识图谱确定机器人在仿真环境地图完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令。
在一个具体的实施例中,待处理文本为“从冰箱拿一瓶牛奶”,经过解析,得到6个指令文本,6个指令文本分别为:“{find}<milk>”、“{walk}<milk>”、“{find}<fridge>”、“{open}<fridge>”、“{grab}<milk>”、“{open}<fridge>”。基于指令文本和仿真环境地图确定机器人在仿真环境地图上完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令,对应6个任务指令分别为:“<char()>{find}<milk>”、“<char()>{walk}<milk>”、“<char()>{find}<fridge>”、“<char()>{open}<fridge>”、“<char()>{grab}<milk>”、“<char()>{open}<fridge>”。
408、控制机器人依序执行各个任务指令。
409、在控制机器人依序执行各个任务指令的过程中控制机器人拍摄得到执行视频。
本申请实施例中,409和408同时执行,执行视频能够显示机器人依序执行各个任务指令的全过程。
410、在控制机器人依序执行各个任务指令之后,输出执行视频。
本申请实施例中,在控制机器人依序执行各个任务指令之后,输出执行视频。用户能够看到机器人依序执行各个任务指令的全过程。并且根据执行视频的优劣,能够对构造的提示模板进行调整,从而进一步提高控制机器人的准确性。
本申请为机器人具身智能提供了可能,使其大语言模型具有了物理世界交互的能力,并提供了从文本输入到视频输出的一站式服务。首先构造室内家庭场景语料的海量数据;其次通过对GLM预训练大语言模型的微调技术,使其模型成为某一领域的“专家”;为了进一步提供模型精度,进行了提示模板(Prompt)构造;然后搭建机器人仿真环境地图,以具备执行指令的能力;最后将大模型与仿真环境进行链式搭建,完成指令的映射,实现从文本的输入到机器人执行命令过程视频的输出,完成一站式服务链。本申请也为智能家居机器人提供了更加智能的可能性,让智能机器人与人类之间的交互更加密切,使自然语言模型不仅局限于chat类生成对话功能,而是可以直接通过文本驱动机器人使其实现具身智能的***。
为便于更好的实施本申请实施例提供的机器人的控制方法,本申请实施例还提供一种基于上述机器人的控制方法的机器人的控制装置。其中名词的含义与上述机器人的控制方法中相同,具体实现细节请参考以上方法实施例中的说明。
请参照图11,图11为本申请实施例提供的机器人的控制装置的结构示意图,该机器人的控制装置可以包括解析模块601、获取模块602、确定模块603、控制模块604,其中,
解析模块601,用于在获取到用户输入的待处理文本的情况下,解析待处理文本,得到至少一个指令文本;
获取模块602,用于获取预设区域内的真实物理环境对应的仿真环境地图;
确定模块603,用于基于指令文本和仿真环境地图确定机器人在仿真环境地图上完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令;
控制模块604,用于控制机器人依序执行各个任务指令。
以上各个模块的具体实施可参见前面的实施例,在此不再赘述。
本申请实施例还提供一种电子设备,包括存储器和处理器,其中处理器通过调用存储器中存储的计算机程序,用于执行本实施例提供的机器人的控制方法中的步骤。
请参照图12,图12为本申请实施例提供的电子设备的结构示意图。
该电子设备可以包括一个或者一个以上处理核心的处理器101、一个或一个以上计算机可读存储介质的存储器102、电源103和输入单元104等部件。本领域技术人员可以理解,图中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器101是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器102内的软件程序和/或模块,以及调用存储在存储器102内的数据,执行电子设备的各种功能和处理数据。可选的,处理器101可包括一个或多个处理核心;可选的,处理器101可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器101中。
存储器102可用于存储软件程序以及模块,处理器101通过运行存储在存储器102的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器102可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器102可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器102还可以包括存储器控制器,以提供处理器101对存储器102的访问。
电子设备还包括给各个部件供电的电源103,可选的,电源103可以通过电源管理***与处理器101逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源103还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元104,该输入单元104可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,该电子设备还可以包括显示单元、图像采集组件等,在此不再赘述。具体在本实施例中,电子设备中的处理器101会按照如下的指令,将一个或一个以上的计算机程序对应的可执行代码加载到存储器102中,并由处理器101来执行本申请提供的机器人的控制方法中的步骤,比如:
在获取到用户输入的待处理文本的情况下,解析待处理文本,得到至少一个指令文本;获取预设区域内的真实物理环境对应的仿真环境地图;基于指令文本和仿真环境地图确定机器人在仿真环境地图上完成指令文本需要进行的任务指令,得到各个指令文本对应的各个任务指令;控制机器人依序执行各个任务指令。
应当说明的是,本申请实施例提供的电子设备与上文实施例中的机器人的控制方法属于同一构思,其具体实现过程详见以上相关实施例,此处不再赘述。
本申请还提供一种计算机可读的存储介质,其上存储有计算机程序,当其存储的计算机程序在本申请实施例提供的电子设备的处理器上执行时,使得电子设备的处理器执行本申请提供的机器人的控制方法中的步骤。其中,存储介质可以是磁碟、光盘、只读存储器(Read Only Memory,ROM)或者随机存取器(Random Access Memory,RAM)等。
本申请还提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述机器人的控制方法的各种可选实现方式。
以上对本申请所提供的一种机器人的控制方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。
应当说明的是,当本申请以上实施例运用到具体产品或技术中时,涉及到用户的相关数据,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。

Claims (12)

1.一种机器人的控制方法,其特征在于,包括:
在获取到用户输入的待处理文本的情况下,解析所述待处理文本,得到至少一个指令文本;
获取预设区域内的真实物理环境对应的仿真环境地图;
基于所述指令文本和所述仿真环境地图确定所述机器人在所述仿真环境地图上完成所述指令文本需要进行的任务指令,得到各个所述指令文本对应的各个所述任务指令;
控制所述机器人依序执行各个所述任务指令。
2.根据权利要求1所述的机器人的控制方法,其特征在于,所述指令文本包括目标动作,所述基于所述指令文本和所述仿真环境地图确定所述机器人在所述仿真环境地图上完成所述指令文本需要进行的任务指令,得到各个所述指令文本对应的各个所述任务指令,包括:
在各个所述指令文本中的各个所述目标动作均属于预设动作集合的情况下,基于所述指令文本和所述仿真环境地图确定所述机器人在所述仿真环境地图上完成所述指令文本需要进行的任务指令,得到各个所述指令文本对应的各个所述任务指令。
3.根据权利要求1所述的机器人的控制方法,其特征在于,所述指令文本包括目标物体,所述基于所述指令文本和所述仿真环境知识图谱确定所述机器人完成所述指令文本需要进行的任务指令,得到各个所述指令文本对应的各个所述任务指令,包括:
在各个所述指令文本中的各个所述目标物体的位置均位于所述预设区域内的情况下,基于所述指令文本和所述仿真环境地图确定所述机器人在所述仿真环境地图上完成所述指令文本需要进行的任务指令,得到各个所述指令文本对应的各个所述任务指令。
4.根据权利要求1所述的机器人的控制方法,其特征在于,所述解析所述待处理文本,得到至少一个指令文本,包括:
基于预设文本解析模型解析所述待处理文本,得到至少一个指令文本。
5.根据权利要求4所述的机器人的控制方法,其特征在于,所述预设文本解析模型包括预设大规模语言模型、旁路模块以及融合模块,所述基于预设文本解析模型解析所述待处理文本,得到至少一个指令文本,包括:
利用所述旁路模块处理所述所述待处理文本,得到旁路输出数据;
利用所述预设大规模语言模型处理所述待处理文本,得到模型输出数据;
利用所述融合模块融合所述旁路输出数据和所述模型输出数据,得到所述至少一个指令文本。
6.根据权利要求5所述的机器人的控制方法,其特征在于,所述旁路模块包括降维矩阵和升维矩阵,所述利用所述旁路模块处理所述所述待处理文本,得到旁路输出数据,包括:
利用所述降维矩阵处理所述所述待处理文本,得到降维数据;
利用所述升维矩阵处理所述所述升维数据,得到所述旁路输出数据。
7.根据权利要求1所述的机器人的控制方法,其特征在于,所述指令文本包括目标动作和所述目标动作作用的目标物体,所述基于所述指令文本和所述仿真环境地图确定所述机器人在所述仿真环境地图上完成所述指令文本需要进行的任务指令,包括:
获取所述机器人在所述仿真环境地图上的机器人属性信息和所述目标物体在所述仿真环境地图上的物体属性信息;
基于所述机器人在所述仿真环境地图上的机器人属性信息、所述目标物体在所述仿真环境地图上的物体属性信息以及所述目标动作确定所述指令文本对应的任务指令。
8.根据权利要求1所述的机器人的控制方法,其特征在于,所述机器人的控制方法,包括:
在控制所述机器人依序执行各个所述任务指令的过程中控制所述机器人拍摄得到执行视频;
在控制所述机器人依序执行各个所述任务指令之后,输出所述执行视频。
9.一种机器人的控制装置,其特征在于,包括:
解析模块,用于在获取到用户输入的待处理文本的情况下,解析所述待处理文本,得到至少一个指令文本;
获取模块,用于获取预设区域内的真实物理环境对应的仿真环境地图;
确定模块,用于基于所述指令文本和所述仿真环境地图确定所述机器人在所述仿真环境地图上完成所述指令文本需要进行的任务指令,得到各个所述指令文本对应的各个所述任务指令;
控制模块,用于控制所述机器人依序执行各个所述任务指令。
10.一种电子设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器用于运行所述存储器内的计算机程序,以执行权利要求1至8任一项所述的机器人的控制方法中的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至8任一项所述的机器人的控制方法中的步骤。
12.一种计算机程序产品,包括计算机程序或指令,其特征在于,该计算机程序或指令被处理器执行时实现权利要求1至8任一项所述的机器人的控制方法中的步骤。
CN202311246211.9A 2023-09-25 2023-09-25 机器人的控制方法及装置 Pending CN117021114A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311246211.9A CN117021114A (zh) 2023-09-25 2023-09-25 机器人的控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311246211.9A CN117021114A (zh) 2023-09-25 2023-09-25 机器人的控制方法及装置

Publications (1)

Publication Number Publication Date
CN117021114A true CN117021114A (zh) 2023-11-10

Family

ID=88626669

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311246211.9A Pending CN117021114A (zh) 2023-09-25 2023-09-25 机器人的控制方法及装置

Country Status (1)

Country Link
CN (1) CN117021114A (zh)

Similar Documents

Publication Publication Date Title
Misra et al. Tell me dave: Context-sensitive grounding of natural language to manipulation instructions
CN109657054A (zh) 摘要生成方法、装置、服务器及存储介质
CN110234018B (zh) 多媒体内容描述生成方法、训练方法、装置、设备及介质
CN113505193A (zh) 一种数据处理方法及相关设备
WO2023284716A1 (zh) 一种神经网络搜索方法及相关设备
Park et al. Visual language navigation: A survey and open challenges
CN111353299A (zh) 基于人工智能的对话场景确定方法和相关装置
CN116541493A (zh) 基于意图识别的交互应答方法、装置、设备、存储介质
CN115221369A (zh) 视觉问答的实现方法和基于视觉问答检验模型的方法
CN110909124B (zh) 基于人在回路的混合增强智能需求精准感知方法及***
Lin et al. Automatic sorting system for industrial robot with 3D visual perception and natural language interaction
CN110852066B (zh) 一种基于对抗训练机制的多语言实体关系抽取方法及***
CN117283549A (zh) 机器人的控制方法及装置
Laird et al. A case study of knowledge integration across multiple memories in Soar
CN116186220A (zh) 信息检索方法、问答处理方法、信息检索装置及***
CN117021114A (zh) 机器人的控制方法及装置
Wang et al. Feeding what you need by understanding what you learned
CN113821610A (zh) 信息匹配方法、装置、设备及存储介质
Oota et al. Cross-Situational Learning Towards Robot Grounding
CN116561350B (zh) 一种资源生成方法及相关装置
Avrin Assessing artificial intelligence capabilities
Jeyanthi et al. AI‐Based Development of Student E‐Learning Framework
CN117182907A (zh) 机器人的控制方法及装置
CN118093840B (zh) 视觉问答方法、装置、设备及存储介质
Wollowski et al. Constructing mutual context in human-robot collaborative problem solving with multimodal input

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