一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于知识图谱推理机器人行为链路的方法与流程

2022-07-10 12:47:16 来源:中国专利 TAG:


1.本发明涉及人工智能机器人任务行为规划、知识图谱领域,尤其涉及一种基于知识图谱推理机器人行为链路的方法。


背景技术:

2.目前机器人行为控制多依赖于规则约束进行控制,在进行作业任务规划时,会遇到作业目标不存在或者无法直接作用于作业目标的问题(例如拿取鸡蛋不能直接完成,而是要分解为打开壁橱、拿取鸡蛋两个过程);无法根据环境与认知推理复杂多步骤行为规划。


技术实现要素:

3.为了解决现有技术中存在的上述技术问题,本发明提出了一种基于知识图谱推理机器人行为链路的方法,其具体技术方案如下:一种基于知识图谱推理机器人行为链路的方法,包括以下步骤:步骤(1)构建三元组知识图谱,表征动作与物体之间的关系;步骤(2)构建机器人本体知识图谱,表示物体之间的类别从属关系;步骤(3)根据步骤(1)构建的三元组知识图谱和步骤(2)构建的机器人本体知识图谱规划行为树链路,该链路由一系列的动作和操作物体构成,得到完整的机器人行为目标;步骤(4)根据步骤(3)规划得到的行为树链路,获得机器人完成动作任务的所有路径;步骤(5)对步骤(4)获得的所有路径根据机器人能够执行的动作进行筛选,并对筛选后的链路进行排序,选择排序后最佳的行为链路;步骤(6)利用步骤(5)排序后的链路完成机器人行为链路规划,规划过程是形成行为链路的过程。
4.进一步的,所述步骤(1)具体为:三元组知识图谱中三元组序列的节点由名词构成,该名词表示物体的名称或者是人物、动物的名称,并包含名词特征列表,名词特征列表能够修饰名词,作为名词的属性;节点之间关系为及物动词节点vt,表示源节点通过动作vt作用到目标节点。
5.进一步的,所述步骤(2)具体为:机器人本体知识图谱中的节点均为名词,该名词记作ontology节点,ontology节点包含描述该节点的标签labels,节点ontology之间具有有向边记作关联,关联为is关系,表示节点ontology之间的从属。
6.进一步的,所述步骤(3)具体为:首先将由外部下达的机器人的语义命令,通过nlp自然语言处理后,生成包含主谓宾的命令格式:发起方s,任务的动作v,任务的作用目标o;然后对语义命令的s、v、o展开搜索,其中o作为起始目标x,当目标x在机器人作业场景中不存在时,在机器人本体知识图谱中向上查询,即查询x的父类,获取ontology;如果
ontology存在,那么获取ontology的所有子类,记作{ontology}c;如果ontology不存在,那么获取ontology的本体;依次类推进行搜索,直到获取到存在于场景中的ontology;重复以上过程,获取不到ontology时,认为规划行为树链路规划失败;其中在每次向上搜索本体(父类)时,都获取父类对应的子类,由所述子类构成了一个子类的集合,如果搜索出现有多个父类的情况,则对每个父类按照以上步骤进行搜索;如果出现一个子类别有多个父类别,增加父类别的权重;如果存在多个父类节点,那么依次对多个父类节点进行搜索查询,获得对应的子类节点,直到找到存在于场景中的本体节点集合,每个本体节点都包含权重;最后将搜索出的节点即同时在场景中的作用目标,进行权重从大到小进行排序,获得最佳可实现操作的目标,以目标为基准进行逆向求解动作链路,进而得到完整的机器人行为目标。
7.进一步的,所述步骤(4)具体为:给定一个任务,有作业主体,作业目标,作业动作,输入行为树链路,当机器人无法由给定的作业动作和作业目标完成任务时,将作业动作和作业目标作为最后一个要执行的任务,使用图搜索的方法在三元组知识库中寻找通过作业动作联通作业主体至作业目标的所有路径{link}。
8.进一步的,所述步骤(5)具体为:对所有路径{link}中的所有动作节点和机器人能够执行的动作进行分类,将不在动作类别中的链路筛选剔除;对于所有路径{link}中的所有目标节点,如果目标节点在机器人作业场景中没有实例,那么进行求解可替代的目标,然后再由可替代的目标作为一个三元组中间节点,展开搜索名词、动词、名词的关系链路,尝试连接链路中中断的部分,也就是通过本体知识搜索替代目标,然后将该目标加入链路中作为一个必须要经过的节点,重新构建一个完整的链路;如果没有替代目标,那么将这个链路剔除;最后针对剩余链路进行排序,排序规则按照链路最短法则进行,获取靠前的前n个链路,n为自定义常数。
9.进一步的,所述步骤(6)具体为:在链路中选择动作节点最少的一个链路,称作link-o,依次将link-o中所有节点,按照机器人、节点动作、节点目标封装行为,由link-o生成行为链路,完成机器人行为链路规划。
10.有益效果:本发明将机器人行为控制问题转化为知识图谱,通过使用知识图谱,来解决机器人行为构建不完整的问题,完成机器人行为链路补足;本发明方法通过规则化语义网络知识图谱,规则化本体知识图谱,推理任务目标替换方案,推理任务链路构建方案,混合推理得到任务补足行为构建方案,解决行为链路筛选和排序问题,精准控制行为机器人端执行动作。
附图说明
11.图1为本体知识库的示意图;图2为本体知识库数学抽象的示意图;图3为本体知识库推理的示意图;
图4为本体知识库另一推理的示意图;图5为三元组知识图谱与动作分类的示意图;图6为语义三元组知识库推理的示意图;图7为本发明方法的流程图。
具体实施方式
12.为了使本发明的目的、技术方案和技术效果更加清楚明白,以下结合说明书附图,对本发明作进一步详细说明。
13.如图7所示,本发明提出了一种基于知识图谱推理机器人行为链路的方法,具体包括以下步骤:(1)构建三元组知识图谱,表征动作与物体之间的关系:首先构造一个节点,所述节点由名词构成,该名词表示物体的名称或者是人物、动物的名称,并包含名词特征features列表,features能够修饰名词,作为名词的属性;节点之间关系为及物动词节点vt,表示源节点source通过动作vt作用到目标target节点,例如:猴子
ꢀ–ꢀ

ꢀ–ꢀ
香蕉;构建中可以出现环路,遍历时设置最大查询跳数避免死循环;(2)构建机器人本体知识图谱,表示物体之间的类别从属关系:如图2所示,为机器人本体知识库数学抽象的示意图,展示了一种节点之间通过拓扑连接的样例。机器人本体知识库中的节点均为名词,该名词节点记作ontology,ontology节点包含描述该节点名词的标签labels,且满足对ontology本体的基本知识定义,ontology之间具有有向边记作关联,关联为is关系,该关系也是国际上对ontology关系的基本定义,表示节点ontology之间的从属,如果节点ontology1从属于ontology2,那么ontology1的标签也可以继承到ontology2,属于本体属性的传递。节点标签labels由属性和强度构成,当标签labels进行继承时,强度递减,当标签labels继承时,如果遇到相同的标签继承,那么强度增加。
14.如图1所示,为本体知识库的示意图,图中各类机器人是机器人的子类,机器人是机械的子类。图3为本体知识库推理的示意图,假设了在本体知识抽象图谱过程中,从一个未知的名词推理搜索存在名词的过程,其中包含了排序。图4为本体知识库另一推理的示意图,该图假设了通过二阶关系推理节点的过程。
15.(3)根据步骤(1)构建的三元组知识图谱和步骤(2)构建的机器人本体知识图谱,规划行为树链路,该链路由一系列的动作和操作物体构成,得到完整的机器人行为目标,解决行为目标不完整规划。
16.因为存在三元组构成的动作,每个三元组的节点表示的名词均可以在场景中存在实例,三元组中表示关系的边能够收敛到一个机器人能够执行的动作。对于不能映射到机器人的一个基本动作的边,可以使用三元组将一个动作进行分解找到机器人能够执行的动作组合,该方法通过语义实现。
17.这里定义并非所有的动作都能够映射到机器人基本动作集合中,例如:递送、拿、取都将被映射到“抓取“这个动作上。
18.因此,三元组知识库可以被看做是一个实现了各种动作连带操作对象的巨大数据网络,该网络通过语义完备记录了生活中各个事物的抽象层面上的操作方法。所以,在完备
语义网络基础下,我们总能够找到与之对应的动作链路,但是不能保证该动作链路上所有的操作目标在实际机器人的作业空间中存在对应实例,因此需进行搜索来判定是否存在可行的方案。
19.此外,由外部下达的机器人的语言命令,根据nlp处理后,生成包含主谓宾的命令格式:发起方s,任务的动作v,任务的作用目标o;这将用于之后的机器人动作链路生成、行为生成的依据。
20.具体的解决行为目标不完整规划的方法为:根据语义命令的s、v、o展开搜索,其中o作为起始目标x,当目标x在机器人作业场景中不存在时,在机器人本体知识图谱中向上查询,即查询x的父类,获取本体ontology。依照本体知识,如果名词a是名词b的父类关系,那么存在一条由b指向a的关联;如果本体ontology存在,那么获取本体ontology的所有子类,记作{ontology}c;如果本体ontology不存在,那么获取ontology的本体,依次类推进行搜索,直到获取到存在于场景中的ontology。重复以上过程,获取不到ontology时,认为规划行为树链路规划失败。
21.每次向上搜索本体时,都获取对应的子类,这样依次构成了子类的集合,如果出现有多个父类的情况,按照以上步骤进行搜索。如果出现一个子类别有多个父类别,增加父类别的权重;如果存在多个父类节点,那么依次对多个父类节点进行搜索查询,获得多个父类节点对应的子类节点。
22.在进行行为目标规划推理时,需要建立记忆集合mem,每经过一跳权重增加w,将记忆值加入所有的子类别中。一个节点的权重x表达为:最后按照同时在场景中的作用目标进行权重从大到小的排序,获得最佳可实现操作的目标,以目标为基准进行逆向求解动作链路,进而实现对整个任务的规划。
23.如图5所示为三元组知识图谱与动作分类的示意图,表示动作如何嵌套进入知识图谱,并归结到某一个动作任务过程中。
24.如图6所示为语义三元组知识库推理的示意图,根据三元组语义,逐步构建行为及行为树的过程,如图中s0、s1、 s2节点通过两个动作v相连,而由v可以查询到对应的动作,构建行为并形成行为链路。
25.(4)根据步骤(3)得到的行为树链路,依照动作知识节点进行行为链路构建,获得机器人完成动作任务所有路径{link}。
26.给定一个任务,有作业主体os,作业目标m,作业动作ot,作为行为链路构建的输入。
27.当机器人无法由给定作业动作和作业目标完成任务时,则寻找替代动作和目标,使得作业目标m最终被作业动作ot完成,具体的:将作业动作和作业目标作为最后一个要执行的任务,使用图搜索的方法在三元组知识库中寻找一切通过作业动作联通作业主体至作业目标的路径,从而获得所有路径
{link}。
28.(5)对步骤(4)获得的所有路径{link}根据机器人能够执行的动作进行筛选,并对筛选后的链路进行排序,选择排序后最佳的行为链路。
29.对于步骤(4)获得的路径{link}中的所有动作节点{motion}和机器人能够执行的动作{task}进行分类,将不在动作类别中的链路筛选剔除;对于路径{link}中的所有目标节点{o},如果节点在机器人作业场景中没有实例,那么进行求解可替代的目标ontology_r,然后再由ontology_r作为一个三元组中间节点,展开搜索名词、动词、名词的关系链路,尝试连接链路中中断的部分,也就是通过本体知识搜索替代目标,然后将该目标加入链路中作为一个必须要经过的节点,重新构建一个完整的链路;如果没有替代目标,那么将这个链路剔除;最后针对剩余链路进行排序,排序规则按照链路最短法则进行。
30.(6)利用步骤(5)排序后的链路完成机器人行为链路规划:对于步骤(5)排序后得到的链路集合,排序后获取靠前的前n个链路,n为自定义常数,在链路中选择动作节点最少的一个链路,称作link-o,依次将link-o中所有节点,按照机器人、节点动作、节点目标封装行为,由link-o生成行为链路behaviors,如果场景物体变更,则需要重新规划 。
31.以上所述,仅为本发明的优选实施案例,并非对本发明做任何形式上的限制。虽然前文对本发明的实施过程进行了详细说明,对于熟悉本领域的人员来说,其依然可以对前述各实例记载的技术方案进行修改,或者对其中部分技术特征进行同等替换。凡在本发明精神和原则之内所做修改、同等替换等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献