一种基于知识图谱构建机器人行为树的系统及方法与流程

专利查询25天前  17



1.本发明涉及机器人及人工智能技术领域,尤其是涉及一种基于与或关系知识图谱构建机器人行为树的方法。


背景技术:

2.现有技术中,机器人行为控制多依赖于规则约束进行控制,无法与现有知识库进行交互,无法根据环境与认知的改变进行自身行为修正变更,无法自适应环境改变。例如:传统知识库只存放物体、人物、常识、动作知识,然后使用其他机器人规划方法进行规划,在此过程中的知识只是各个孤立的节点,并且参数属性需要在机器人执行任务的时候才能获取到。
3.并且,通常意义上的机器人任务规划输出为一个个的行为序列,这样构建复杂机器人任务时出现大量冗余行为。
4.对此,在现阶段基于大数据构建的知识图谱基础上,我们需要设计一种方案,将知识图谱应用到机器人行为决策上来。


技术实现要素:

5.为解决现有技术的不足,构造一种知识图谱结构,实现避免机器人动作行为规划中,出现的动作、目标缺失的目的,本发明采用如下的技术方案:一种基于知识图谱构建机器人行为树的系统,包括:知识图谱及行为树,知识图谱通过一组有向连接的动作节点,根据aog格式构建,动作节点包括动作类别motion及其对应的一组动作特征feature、动作作用对象target,有向连接根据比对动作特征feature连接动作节点,有向连接包括连接类型type、执行顺序seq、路由可能性prop,连接类型type包括选择select、顺序sequence、并行parallel,当连接类型type为顺序sequence时,执行顺序seq表示执行父动作节点之后需要执行子动作节点,动作具有组合特性,当连接类型type为并行parallel时,表示执行顺序seq相同,并行执行的动作,当连接类型type为选择select时,表示执行父节点之后根据选择select中的条件信息选择执行子节点,路由可能性prop表示动作节点的选择强度,与并行parallel相关;行为树根据主谓宾结构的任务,将主语和宾语作为动作作用对象target,将谓语分类到动作类别motion对应的一组动作特征feature,根据动作特征feature构建对应的行为behavior,在知识图谱中寻找与行为behavior对应的全部子动作节点,依次构造成行为集合{behavior},并根据子节点的连接类型选择select和顺序sequence,将行为集合{behavior}拆分为子行为集合{behavior}sel和{behavior}seq,将执行顺序seq相同的子动作节点拟定为parallel节点,对于所有的子行为集合{behavior}sel构建选择select行为节点,对于所有的子行为集合{behavior}seq构建顺序sequence行为节点,构建时,根据子动作节点的执行顺序seq和路有可能性prop调换行为树各个子行为节点的顺序。
6.一种基于知识图谱构建机器人行为树的方法,包括如下步骤:
s1,构建对象知识库,将场景中的人物信息记录为{human},物体信息记录为{evn},两者均包含属性和位置信息(property, position),为场景中的人物、物体构建知识节点,各知识节点包括其对应的属性和位置信息。
7.属性包括人物名称、人物称呼、人物坐标、人物特征、物体名称、物体坐标、物体特征。
8.s2,构建动作知识库,包括动作类别标识motion、动作特征的标签列表features和动作作用对象target,动作作用对象target的值为对象知识库中的人物信息human或物体信息evn。
9.s3,构建知识图谱,以机器人具有的可被控制的最小动作建立动作节点m,包括动作作用对象target、动作类别motion及其对应的一组动作特征feature,动作节点之间建立有向连接关系r,根据动作特征feature的比对进行连接,动作节点m根据aog(and or graph)格式构建知识图谱。
10.有向连接关系r包括连类型type、执行顺序seq、路由可能性prop。连接类型type包括选择select、顺序sequence、并行parallel;执行顺序seq与顺序sequence对应,表示的动作节点执行的顺序,即执行父动作节点之后需要执行子动作节点,且必须执行子节点,动作具有组合特性;当执行顺序seq相同时,连接类型type为并行parallel,表示并行执行的动作;当连接类型为选择select时,表示执行父节点之后根据条件选择执行子节点,选择select中包含条件信息,条件信息包括环境信息,记作cond(env),条件计算与机器人感知信息相关,由深度神经网络依据多模态条件判决当前的条件是否可以执行;路由可能性prop表示动作节点的选择强度,与并行parallel相关。
11.动作作用对象target表示在对象知识库中的一个知识节点实例,使用唯一的id传递target。
12.动作作用对象target的值包括:地点place、目标物体object、目标人物human、语言内容speak。
13.s4,根据知识图谱,构建行为树,根据收到的主谓宾结构的任务,在对象知识库中找到主语s和宾语o对应的目标,作为动作作用对象target,当在场景中不存在时,构建失败;将谓语v经过分类器分类到一个具体动作,该动作与动作知识库中的动作特征的标签列表features对应,即动作节点m中的动作特征feature;对动作作用对象target进行填充,参数获取方式从当前该动作的主语s、宾语v所对应的场景知识中提取,语言内容从场景目标和上下文文本生成获得;依照动作特征构建对应行为,根据行为特征选择使用运动、行径还是语言对话,完成后的行为记作behavior。
14.对于已经构建的行为behavior,在动作知识图谱中寻找与之对应的全部子动作节点,节点依次构造成行为集合{behavior},在集合{behavior}中,按照关联类型选择select、顺序sequence分离节点集合,拆分为{behavior}sel和{behavior}seq,分别拟定select节点和sequence节点,将seq相同的节点拟定为parallel节点,对于所有的{behavior}sel构建sel行为节点,构建时进行条件判断cond(env),获得布尔类型的实时条件判断结果,对于所有的{behavior}seq构建sequence行为节点,构建时进行排序,按照seq和prop排序方法由大到小调换行为树各个子节点的顺序。
15.s5,对行为树进行参数注入,针对任意一个行为节点,使用如下方法进行参数注
入:主体始终使用任务理解中的主语s,根据主语s进行环境、人物目标查询,获取位置信息position、target的id(即动作类别motion)、描述信息注入behavior的参数列表(target)中;动作id作为内容注入行为中,使用任务理解信息中的谓语v作为行为树名称,对于无法确定参数的行为,进行知识库检索,寻找feature相似的动作进行处理;对于完全无法确定参数target的动作,将导致无法构建行为,此时判定整个行为树构建失败。
16.s6,校验过程设计为:一个行为下的子行为必须全是sequence节点或者selector节点;parallel作为并行执行节点,可以与sequence节点共存;一个selector行为必须包含条件判定布尔参数;任何行为必须包含可以完成的动作id参数。
17.本发明的优势和有益效果在于:本发明在动作知识的基础上,将aog的设计思维引入,使得动作知识间存在依存关系,仅仅依靠知识图谱就可以构建出机器人的行为;最终生成的行为树,在结构上由于行为序列,行为树既能够表示顺序又能够表示动作行为间的层次,而且相同的行为规划不会重复出现。
附图说明
18.图1是本发明中的场景知识图谱。
19.图2是本发明中的动作知识图谱。
20.图3是本发明中sequence和select关系图。
21.图4是本发明中使用知识库进行规划的示意图。
22.图5是本发明中完整行为树生成示例图。
具体实施方式
23.以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
24.一种基于与或关系知识图谱构建机器人行为树的方法,涉及人工智能机器人任务行为规划、知识图谱领域技术、行为树以及引擎技术、机器人控制论,可用于机器人自主行为决策和驱动控制,通过调整知识图谱,即可改变机器人的行为逻辑规划,具体如下:该方案中规划将aog(and or graph)图作为决策核心,使用动作节点按照aog格式构建知识图谱;将任务分解为一个个动作,动作以机器人能够执行的最小动作为基准;将机器人可以进行交互的对象,存储在对象知识库中,该知识库随着场景的更新而更新。
25.如图3所示,前提之一是已存在周边环境的感知和对应人、物的知识库存储,将场景中的人物信息记录为{human},将场景中的物体的地点记录为{evn},两者均包含属性和位置信息(property, position),包含可用性信息,均存放在对象知识库中;每个知识节点包含物体的基本信息,表示物体或者人是否存在于场景中;存在于场景中的知识节点,将拥有实体属性,属性有物体相对于机器人的世界坐标、物体的特征、物体名称、人物名称、人物称呼、人物坐标、人物的特征;以上信息均数据化存放在知识节点中。
26.如图2所示,机器人具有的可被控制的最小动作标识motion为单位,动作的标签列
表features,动作的作用对象设置为target;target表示在对象知识库中的一个知识节点实例,使用唯一的id传递target,值为对象知识库中的human或者env;target分别为place、object、human、speak,分别表示地点、目标物体、目标人物、语言内容,这些内容在对象知识中获取。
27.一个动作节点m由motion、feature、target构成,分别表示动作类别、动作特征、动作作用目标;动作节点之间存在有向连接关系r,两个动作之间的关系记作m1-r-》m2,根据特征的相似度比对,将具有相似特征的m节点尽可能有向连接起来,形成有向图,每个连接记作r,例如,“欢迎”和“迎宾”动作特征值类似,属于同一类动作。构成r的要素:type、seq、prop,分别表示r的类型、执行顺序、路由可能性,该属性人为指定初始值和状态。
28.其中type表示的类型为select、sequence、parallel,分别表示选择、顺序、并行;seq表示的执行顺序指出节点关系,与sequence相关;prop表示的路有可能性,即选择强度,与属性parallel相关;对于动作知识图谱,节点表示动作m,每个动作节点存储一个可以执行的动作,机器人的行为由若干个动作构成,允许重复。
29.如图1所示,对于seq关系,表示执行父节点之后需要执行子节点,且必须执行子节点,动作具有组合特性;对于seq相同情况下,将被视为并行parallel关系,表示并行执行的动作。对于select关系,表示执行父节点之后按照条件选择执行子节点,select关系中包含条件关系。条件信息包括环境信息,记作cond(env),条件计算与机器人感知信息相关,由深度神经网络依据多模态条件判决当前的条件是否可以执行。
30.如图4所示,依照建立的知识图谱,设计行为树构建步骤。构建行为树的初始条件是一个有主谓宾三个元素构成的任务,任务由主语s、谓语v、宾语o构成,我们收到一个任务,然后在对象知识库中找到主语s和宾语o所对应的目标物体或者人物,标记为target,如果在场景中不存在,那么规划失败。
31.将谓语v经过分类器(适用于一切已知的机器学习分类)分类到一个具体动作,该动作在动作知识库中(m中的feature)。对target进行填充,参数获取方式从当前该动作的主语s、宾语v所对应的场景知识中提取,语言内容从场景目标和上下文文本生成获得。依照动作名称构建对应行为,根据行为特征选择使用运动、行径还是语言对话,完成后的行为记作behavior,标志着行为构建完成。
32.对于已经构建的行为behavior,在动作图谱中寻找与之对应的全部子动作节点,节点依次构造成行为集合{behavior},在集合{behavior}中,按照关联类型select、sequence类型分离节点集合,拆分为{behavior}sel和{behavior}seq,分别拟定selector节点和sequence节点,将seq相同的节点拟定为parallel节点。对于所有的{behavior}sel构建sel行为节点,构建时进行条件判断cond(env),获得布尔类型的实时条件判断结果。对于所有的{behavior}seq构建seq行为节点,构建时进行排序,按照seq和prop排序方法调换行为树各个子节点的顺序。
33.如图5所示,最后对行为树进行参数注入,针对任意一个行为节点,我们使用如下方法进行参数注入:主体始终使用任务理解中的主语s,按照主语s进行环境、人物目标查询,获取位置、target的id、motion类型、描述信息注入behavior的参数列表(target)中;动作id作为
内容注入行为中,使用任务理解信息中的谓语v作为行为树名称,对于无法确定参数的行为,进行知识库检索,寻找feature相似的动作进行处理;对于完全无法确定参数target的动作,将导致无法构建行为,此时判定整个行为树构建失败。
34.校验过程设计为:一个行为下的子行为必须全是sequence节点或者selector节点;parallel作为并行执行节点,可以与sequence节点共存;一个selector行为必须包含条件判定布尔参数;任何行为必须包含可以完成的动作id参数。
35.以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。

技术特征:
1.一种基于知识图谱构建机器人行为树的系统,包括:知识图谱及行为树,其特征在于所述知识图谱通过一组有向连接的动作节点,根据aog格式构建,动作节点包括动作类别motion及其对应的一组动作特征feature、动作作用对象target,有向连接根据比对动作特征feature连接动作节点,有向连接包括连接类型type、执行顺序seq、路由可能性prop,连接类型type包括选择select、顺序sequence、并行parallel,当连接类型type为顺序sequence时,执行顺序seq表示执行父动作节点之后需要执行子动作节点,当连接类型type为并行parallel时,表示执行顺序seq相同,并行执行的动作,当连接类型type为选择select时,表示执行父节点之后根据选择select中的条件信息选择执行子节点,路由可能性prop表示动作节点的选择强度;所述行为树根据主谓宾结构的任务,将主语和宾语作为动作作用对象target,将谓语分类到对应的动作特征feature的动作motion,根据动作特征feature构建对应的行为behavior,在知识图谱中寻找与行为behavior对应的子动作节点,依次构造成行为集合{behavior},并根据子节点的连接类型选择select和顺序sequence,将行为集合{behavior}拆分为子行为集合{behavior}sel和{behavior}seq,分别拟定select子行为和sequence子行为,将执行顺序seq相同的子动作节点拟定为parallel节点,对子行为集合{behavior}sel构建选择select行为节点,对子行为集合{behavior}seq构建顺序sequence行为节点,构建时,根据子动作节点的执行顺序seq和路有可能性prop由大到小调换行为树各个子行为节点的顺序。2.根据权利要求1所述的一种基于知识图谱构建机器人行为树的系统,其特征在于所述选择select中的条件信息为环境信息,条件计算与机器人感知信息相关,由深度神经网络依据多模态条件,判决当前的条件是否可以执行,构建选择select行为节点时,进行条件判断,获得布尔类型的实时条件判断结果。3.根据权利要求1所述的一种基于知识图谱构建机器人行为树的系统,其特征在于系统还包括对象知识库,记录场景中的目标对象及其属性,在构建行为树时,根据主语和宾语,在对象数据库中检索对应的目标对象,作为动作作用对象target。4.根据权利要求1所述的一种基于知识图谱构建机器人行为树的系统,其特征在于为动作节点构建动作知识库,为动作类别motion构建标识,为动作特征feature构建标签列表,为动作作用对象target提供目标对象信息。5.根据权利要求3所述的一种基于知识图谱构建机器人行为树的系统,其特征在于所述动作作用对象target,是在对象知识库中的一个知识节点实例,使用唯一的id传递动作作用对象target。6.根据权利要求1所述的一种基于知识图谱构建机器人行为树的系统,其特征在于对所述行为树进行参数注入,针对行为节点,根据主语进行目标对象查询,获取位置信息、动作类别motion、描述信息注入行为behavior的参数列表中,动作类别motion作为内容注入行为中,将谓语作为行为树名称,对于无法确定参数的行为,寻找动作特征feature相似的动作进行处理;对于完全无法确定参数动作作用对象target的动作,判定行为树构建失败。7.根据权利要求3-6之一所述的一种基于知识图谱构建机器人行为树的系统,其特征在于所述目标对象的信息包括人物信息、物体信息,两者均包含属性和位置信息,属性包括人物名称、人物称呼、人物坐标、人物特征、物体名称、物体坐标、物体特征。8.根据权利要求1所述的一种基于知识图谱构建机器人行为树的系统,其特征在于所
述动作作用对象target的值包括:地点、目标物体、目标人物、语言内容。9.一种基于知识图谱构建机器人行为树的方法,其特征在于包括如下步骤:s1,构建对象知识库,记录场景中的目标对象及其属性;s2,构建动作知识库,为动作节点构建动作知识库,动作类别motion构建标识,为动作特征feature构建标签列表,为动作作用对象target关联对象知识库中目标对象及其属性;s3,构建知识图谱,通过一组有向连接的动作节点,根据aog格式构建,动作节点包括动作类别motion及其对应的一组动作特征feature、动作作用对象target,有向连接根据比对动作特征feature连接动作节点,有向连接包括连接类型type、执行顺序seq、路由可能性prop,连接类型type包括选择select、顺序sequence、并行parallel,当连接类型type为顺序sequence时,执行顺序seq表示执行父动作节点之后需要执行子动作节点,当连接类型type为并行parallel时,表示执行顺序seq相同,并行执行的动作,当连接类型type为选择select时,表示执行父节点之后根据选择select中的条件信息选择执行子节点,路由可能性prop表示动作节点的选择强度;s4,构建行为树,根据主谓宾结构的任务,通过主语和宾语,在对象数据库中检索对应的目标对象,作为动作作用对象target,将谓语分类到动作类别motion对应的一组动作特征feature,根据动作特征feature构建对应的行为behavior,在知识图谱中寻找与行为behavior对应的子动作节点,依次构造成行为集合{behavior},并根据子节点的连接类型选择select和顺序sequence,将行为集合{behavior}拆分为子行为集合{behavior}sel和{behavior}seq,分别拟定select子动作节点和sequence子动作节点,将执行顺序seq相同的子动作节点拟定为parallel节点,对子行为集合{behavior}sel构建选择select行为节点,对子行为集合{behavior}seq构建顺序sequence行为节点,构建时,根据子动作节点的执行顺序seq和路由可能性prop调换行为树各个子行为节点的顺序;并对行为树进行参数的注入。10.根据权利要求9所述的一种基于知识图谱构建机器人行为树的方法,其特征在于对构建的行为树进行校验,一个行为下的子行为必须全是顺序sequence行为节点或者选择selector行为节点;作为并行执行的行为节点,能够与顺序sequence行为节点共存;一个选择selector行为节点必须包含条件判定布尔参数;任何行为节点必须包含可以完成的动作类别motion参数;对于不能满足校验的行为树,记作构建失败。

技术总结
本发明公开了一种基于知识图谱构建机器人行为树的系统及方法,系统包括:知识图谱及行为树,知识图谱通过一组有向连接的动作节点,根据AOG格式构建,动作节点包括动作类别及其对应的一组动作特征、动作作用对象,有向连接根据比对动作特征连接动作节点;行为树根据主谓宾结构的任务,将主语和宾语作为动作作用对象,将谓语分类到动作类别对应的一组动作特征,根据动作特征构建对应的行为,根据行为构建行为节点,并根据子动作节点有向连接调换行为树各行为节点的顺序;方法包括:S1,构建对象知识库;S2,构建动作知识库;S3,构建知识图谱;S4,构建行为树。构建行为树。构建行为树。


技术研发人员:周元海 宋伟 朱世强 余小康 任杰 方伟
受保护的技术使用者:之江实验室
技术研发日:2021.11.22
技术公布日:2022/3/7

最新回复(0)