首页> 中国专利> 基于行为树的机器人云平台执行引擎和执行方法

基于行为树的机器人云平台执行引擎和执行方法

摘要

本发明提供了一种基于行为树的机器人云平台执行引擎和执行方法,所述机器人云平台执行引擎包括服务端应用集群、机器人以及中间件,所述服务端应用集群由若干个服务端应用组成;所述服务端应用生成机器人指令,通过中间件发送给机器人,机器人对生成的机器人指令解析生成行为,并通过中间件将机器人指令执行结果反馈给服务端应用。该机器人云平台执行引擎具有智能化程度高、适用性强、工作灵活、接入便捷和维护成本低的特点。

著录项

  • 公开/公告号CN112235419A

    专利类型发明专利

  • 公开/公告日2021-01-15

    原文格式PDF

  • 申请/专利权人 之江实验室;

    申请/专利号CN202011430124.5

  • 申请日2020-12-09

  • 分类号H04L29/08(20060101);H04L12/46(20060101);B25J9/16(20060101);

  • 代理机构33200 杭州求是专利事务所有限公司;

  • 代理人邱启旺

  • 地址 310023 浙江省杭州市余杭区文一西路1818号人工智能小镇10号楼

  • 入库时间 2023-06-19 09:35:27

说明书

技术领域

本发明涉及智能机器人与云计算技术领域,具体地涉及一种基于行为树的机器人云平台执行引擎和执行方法。

背景技术

智能机器人技术正在被越来越多的应用于生活中各个场景,但是大多数机器人只能执行单一预置的任务,换一个场景可能就需要完全不同的另一台机器人,例如导览机器人只能在某一个场馆工作,行动路径和导览内容都是预先设置好无法更改的,换一个场馆就无法使用。并且智能化程度比较低,遇到特殊场景就无法做出合适的行为,遇到不同的服务对象无法提供有针对性的服务。通常有限状态机(FSM)会被用于机器人的决策,但是面对复杂的场景,机器人的状态会非常多,状态间的变化关系会非常复杂,在开发中需要投入非常大的成本,并且复用性较差,很难复用到类似机器人的开发中。

发明内容

针对现有技术存在的问题,本发明提出了一种基于行为树的机器人云平台执行引擎。该机器人云平台执行引擎采用行为树作为决策结构,结合了云平台的扩展能力和人工智能,具有维护成本低、工作灵活、接入便捷、智能化程度高等特点。

为了实现上述目的,本发明采用如下技术方案:一种基于行为树的机器人云平台执行引擎,所述机器人云平台执行引擎包括:服务端应用集群、机器人以及中间件,所述服务端应用集群由若干个服务端应用组成;所述服务端应用生成机器人指令,通过中间件发送给机器人,机器人对生成的机器人指令解析生成行为,并通过中间件将机器人指令执行结果反馈给服务端应用。

进一步地,所述服务端应用分为基础设施层、功能模块层以及交互层。

进一步地,所述基础设施层包含行为树模块、机器人通信模块和会话模块,所述行为树模块具有循序执行节点、选择执行节点、并行执行节点、条件节点、执行节点功能;同时,所述行为树模块用于定义具体条件逻辑和行为逻辑的接口;所述机器人通信模块用于封装基于MQTT消息的收发机制和消息审计功能;所述会话模块用于封装机器人会话中所有状态数据的读写逻辑功能。

进一步地,所述功能模块层包含行为树解析模块、指令分发模块、会话管理模块、数据源管理模块、设备控制模块和场景配置模块;所述行为树解析模块采用基于json的行为树schema,处理行为树的生成;所述指令分发模块用于处理服务端应用与机器人之间的通信;所述会话管理模块负责场景中的状态数据维护,包括基于redis的存储功能的实现;所述场景配置模块用于管理各个场景下的全局参数,通过json文件配置,运行时进行加载和存储;所述数据源管理模块采用监听者模式,负责数据输入输出。

进一步地,所述交互层包括API、控制台和客户端;所述API用于控制场景会话的开启与关闭;所述控制台基于日志采集埋点,展示和监控所述机器人云平台执行引擎的执行情况;所述客户端用于提供基础的开发SDK,支持python,c++语言。

进一步地,所述机器人云平台执行引擎通过http,udp协议对摄像头、大屏显示器进行控制管理。

本发明还提供了一种所述机器人云平台执行引擎的执行方法,具体为:所述机器人云平台执行引擎运行时,交互层收到请求,会话管理模块开启一个会话,并生成一个全局唯一的会话id,根据请求的场景,所述场景配置模块加载预制的配置参数,包括需要机器人的种类、机器人的数量、需要监听的数据源、环境参数;所述会话id作为key,保存使用相应的数据结构,根据场景配置,生成行为树,最后通过循环执行行为树来实现对机器人的控制。

进一步地,所述生成行为树的方法具体为:行为树解析模块根据配置文件生成行为树。

进一步地,所述生成行为树的方法具体为:通过调用云平台提供的算法知识库务,算法知识库根据会话内上下文生成相应的任务规划,行为树解析模块收到任务规划后,解析任务规划,生成行为树。

与现有技术相比,本发明具有如下有益效果:本发明通过行为树模块来降低维护成本、提高灵活性。首先树形结构非常清晰,每一个子节点代表一个子功能模块,每一个叶子节点代表一个条件或者一个行为;其次行为树应对场景变化非常迅速,通过不断循环遍历,不同状态会得到不同的行为执行,可以灵活应对场景中不同的情况。并且行为树易于维护,子树结构都可以模块化和得以复用,降低了开发成本。

通常行为树会作为机器人本地的执行模块,本发明将行为树放在云端,可以同时作用于多台机器人,进而加强机器人之间的协作能力,做出更优的统筹决策。执行过程中,行为树可以很方便的获取所有机器人的状态以及环境数据,来进行统筹规划。

本发明包含机器人客户端,以便于不同类型机器人的接入。客户端支持多种语言,包括python、java、c++等主流语言。客户端抽象了一套SDK API,机器人只需实现指令收发的业务逻辑,而不需要关注通信协议的实现和解析,降低了接入成本。

此外,本发明应用云计算技术,机器人通过执行引擎连接云平台,能够充分发挥云平台计算能力强、扩展能力强的特点。通过数据源管理模块,执行引擎可以把机器人采集到的数据传递到云平台,相对于机器人本地的计算能力,云平台执行更快,可以提供更快的响应,来控制机器人。云平台可以根据场景加载不同场景信息,生成不同的行为树,完成不同场景任务。云平台提供了更强大的情景模式数据库,加上人工智能技术,可以不断学习和优化任务规划,发挥智能化优势。通过服务端应用的更新,可以实现对机器人控制的升级,来适应和满足场景中新出现的需求。

附图说明

图1为本发明基于行为树的机器人云平台执行引擎的结构部署图;

图2为本发明基于行为树的机器人云平台执行引擎的系统架构图;

图3为本发明机器人云平台执行引擎的控制方法流程图。

具体实施方式

如图1,本发明提供了基于行为树的机器人云平台执行引擎的结构部署图,所述机器人云平台执行引擎包括:服务端应用集群、机器人以及中间件,所述服务端应用集群由若干个服务端应用组成;所述服务端应用生成机器人指令,通过中间件发送给机器人,机器人对生成的机器人指令解析生成行为,并通过中间件将机器人指令执行结果反馈给服务端应用。所述服务端应用通过中间件,可以与云平台所提供的算法知识库通信,获取任务规划以及人工智能服务。如图2,为本发明基于行为树的机器人云平台执行引擎的结构图,可以看出所述服务端应用分为基础设施层、功能模块层以及交互层,所述基础设施层包含行为树模块、机器人通信模块和会话模块,所述行为树模块具有循序执行节点、选择执行节点、并行执行节点、条件节点、执行节点等功能。同时,所述行为树模块用于定义具体条件逻辑和行为逻辑的接口;所述机器人通信模块用于封装基于MQTT消息的收发机制和消息审计功能;所述会话模块用于封装机器人会话中所有状态数据的读写逻辑功能。

所述功能模块层包含行为树解析模块、指令分发模块、会话管理模块、数据源管理模块、设备控制模块和场景配置模块;所述行为树解析模块采用基于json的行为树schema,处理行为树的生成;通过json文件的配置,行为树解析模块能够在内存生成行为树,并且循环促发执行。同时行为树解析模块也支持从外部系统接收任务规划,再适配成定义的schema,生成行为树。基于这种扩展模式,可以充分里用云平台的优势,集成知识库,机器人协同等算法模块,生成更加智能和灵活的行为树,来控制机器人以及机器人集群。所述指令分发模块用于处理服务端应用与机器人之间的通信,一方面根据执行节点的具体逻辑,生成发给机器人的指令,通过通信SDK包向机器人发送消息,同时也监听机器人反馈的消息。所述会话管理模块负责场景中的状态数据维护,包括基于redis的存储功能的实现;所述场景配置模块用于管理各个场景下的全局参数,通过json文件配置,运行时进行加载和存储;所述数据源管理模块采用监听者模式,负责数据输入输出。同时,该机器人云平台执行引擎通过http,udp等协议,用于对摄像头、大屏显示器等设备进行控制管理。

所述交互层包括API、控制台和客户端;所述API用于控制场景会话的开启与关闭;所述控制台基于日志采集埋点,展示和监控所述机器人云平台执行引擎的执行情况;所述客户端用于提供基础的开发SDK,支持python,c++等多种语言,封装了与服务端应用的通信协议,包括消息格式,创建连接、关闭连接过程,心跳连接等功能。机器人利用SDK的功能只需要实现对指令的接收和解析,以及发送。

如图3,提供了本发明所述机器人云平台执行引擎的执行方法流程图,具体为:所述机器人云平台执行引擎运行时,服务端应用中的交互层收到请求,会话管理模块开启一个会话,并生成一个全局唯一的会话id。根据请求的场景,所述场景配置模块初始化场景,加载预制的配置参数,包括需要机器人的种类,机器人的数量,需要监听的数据源,环境参数,同时初始化机器人。所述会话id作为key,保存使用相应的数据结构。根据场景配置,通过调用云平台提供的算法知识库,算法知识库根据会话内上下文获取相应的任务规划,行为树解析模块收到任务规划后,解析任务规划,构建行为树,最后循环执行行为树,向机器人发送指令,并接受反馈,来实现对机器人的控制。

本发明中生成行为树的方法还可以为:通过行为树解析模块根据配置文件生成行为树。

本发明的机器人云平台执行引擎具有智能化程度高、适用性强、工作灵活、接入便捷和维护成本低的特点。利用云平台的计算能力,执行引擎可以对接多种智能算法,并且得到快速的响应,发挥人工智能的优势。同时执行引擎将行为树维护在服务端,可以集成所有场景下机器人的状态和环境数据,有利于多机器人协同作业,做出统筹决策。机器人本体可以通过执行引擎加载不同场景配置,也可以从云平台下载智能场景,从而完成不同种类任务,适应多种多样的场景。执行引擎也完全继承了行为树的优越特性,机器人能够灵活的对场景中不同条件做出执行决策,满足场景需要。行为树模块化的结构使得执行规划易于更新和维护,进而降低了使用成本。通过执行引擎提供的多语言的SDK开发包,机器人能够快速和便捷的接入执行引擎。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号