当前位置: 首页 > news >正文

北京网站制作官网创意的广告图片

北京网站制作官网,创意的广告图片,沈阳做网站优化,wordpress 整站播放器行为树 目录 什么是行为树(behavior tree)#xff1f;行为树的相关术语 行为节点和控制节点不同类型的控制结点#xff1a; 顺序节点选择节点并行节点装饰结点 机器人的例子#xff1a;物体搜索 1#xff1a;如果只存在一个地点A#xff0c;那么行为树很简单#xff0…行为树 目录 什么是行为树(behavior tree)行为树的相关术语 行为节点和控制节点不同类型的控制结点 顺序节点选择节点并行节点装饰结点 机器人的例子物体搜索 1如果只存在一个地点A那么行为树很简单到A处找到物体。如下图所示2接下来我们使用一个条件结点用来判断机器人是否找到了物体(具体实现可以通过相机拍摄照片然后进行图像识别)。3我们的机器人工作的环境可能包含了多个地点我们期望它可以尝试到所有已知的地点搜寻物体在搜寻到物体后结束搜索。这可以通过添加一个选择结点作为根节点来实现如下图所示4如果我们期望机器人可以同时搜寻多个不同的物体(比如苹果和橘子)可以通过添加并行结点实现。 装饰器(decorator)和黑板(blackboard)行为树和有限状态机的比较 1以机器人捡起一个物体的任务为例这需要机器人先移动到物体附近然后夹起物体最后再移动回机器人原来所处的位置。我们分别用行为树和状态机实现它们如下图所示2如果我们想要进一步修改行为比如检测夹子是否处于可以抓起物体的位置然后再夹紧夹子。对于行为树我们只需要插入一个子树就能完成期望的修改。但对于状态机我们需要重写多个转换操作。也就是说行为树更便于进行组合(modularity)和模块化。下图给出了修改后的行为树和状态机图示3对于反应式行为比如机器人低电量时需要马上回到电源处即使它还在执行某个任务的过程中。如果使用行为树来实现这会非常麻烦我们需要在任意任务的子树中支持充电行为。但对于状态机来说实现起来就很简单只需要从所有其它动作连线到充电动作即可。状态机和行为树联合使用 参考原文https://robohub.org/introduction-to-behavior-trees/ 参考翻译https://zhuanlan.zhihu.com/p/463182588 什么是行为树(behavior tree) 行为树(behavior tree)是用来实现非人工角色复杂行为的工具它具有下面这些特征 行为树是树 执行时从根结点开始按照指定的顺序遍历直到到达终结状态**叶子结点都是可执行的行为**叶子结点会进行具体的操作可以是一个简单的检测操作也可以是一个更复杂的操作结点会返回状态信息(成功失败运行中)。内部结点控制树的遍历内部结点会根据孩子结点返回的状态信息按照特定的规则确定下一个执行的结点。 行为树的相关术语 行为节点和控制节点 下图给出了行为树的不同结点类型及其对应的图示 tick:行为树从根节点开始按照预定义的顺序遍历各个节点并执行他们的行为的过程称为一次tick会返回成功(success)失败(failure)运行中(running) 的状态信息给它的父结点。行为结点(execution node)行为树的叶子结点可以是动作结点(action node)或条件结点(condition node)。对于条件结点(condition node)会在一次tick后立马返回成功或失败的状态信息。对于动作结点(action node)则可以跨越多个tick执行直到到达它的终结状态。一般来说条件结点用于简单的判断(比如钳子是否打开?)动作结点用于表示复杂的行为(比如打开房门)。控制结点(control node)控制结点是行为树的内部结点它们定义了遍历其孩子结点的方式。控制结点的孩子可以是行为结点也可以是控制结点。顺序(Sequence)备选(Fallback)并行(Parallel)这3种类型的控制结点可以有任意数量的孩子结点它们的区别在于对其孩子结点的处理方式。而装饰(Decorator)结点只能有一个孩子结点用来对孩子结点的行为进行自定义修改。 不同类型的控制结点 顺序节点 按顺序执行孩子结点直到其中一个孩子结点返回失败状态或所有孩子结点返回成功状态。 选择节点 按顺序执行孩子结点直到其中一个孩子结点返回成功状态或所有孩子结点返回失败状态。一般用来实现角色的选择行为。 并行节点 “并行执行”所有孩子结点。直到至少M个孩子(M的值在1到N之间)结点返回成功状态或所有孩子结点返回失败状态。 装饰结点 装饰结点以自定义的方式修改孩子结点的行为。比如Invert类型的装饰结点可以反转其孩子结点返回的状态信息。为了方便他人理解应该尽可能使用比较常见的装饰结点。 机器人的例子物体搜索 接下来我们通过一个机器人搜索物体的例子来理解行为树的执行过程。 1如果只存在一个地点A那么行为树很简单到A处找到物体。如下图所示 上图中我们使用了一控制结点表示到A处这一动作。在机器人还没有移动到A处前这一动作结点会返回运行中(running)状态。 2接下来我们使用一个条件结点用来判断机器人是否找到了物体(具体实现可以通过相机拍摄照片然后进行图像识别)。 行为树的一个很常用的设计规则就是使用显式成功条件(explicit success condition)。简单来说就是在执行动作前总是先进行条件检测。比如先检测机器人是否已经在A处如果在就不执行去A处的动作直接返回成功状态。如下图所示 3我们的机器人工作的环境可能包含了多个地点我们期望它可以尝试到所有已知的地点搜寻物体在搜寻到物体后结束搜索。这可以通过添加一个选择结点作为根节点来实现如下图所示 我们可以使用选择结点(fallback node)定义角色的反应行为。当一种反应行为无法工作后自动尝试下一种。 4如果我们期望机器人可以同时搜寻多个不同的物体(比如苹果和橘子)可以通过添加并行结点实现。 下图给出了在多个地点同时搜寻苹果和橘子的行为树图示 我们可以使用并行结点组合多个动作比如让机器人原地打转直到连续5个tick识别到一个人为止。 装饰器(decorator)和黑板(blackboard) 装饰器(decorator) 我们可以使用装饰器结点(decorator node)来对行为树进行优化。考虑上面的在多个地点搜寻物体的行为树如果地点数目达到20个以上整个行为树看上去就会变得非常庞大也为我们进一步添加新的结点带来麻烦。 下面是避免这些麻烦的常用方法 引入装饰器结点(decorator node) 相较于每增加一个搜寻地点就复制一份完全相同的子树我们可以定义一个规则为Repeat的装饰器结点用来重复执行它的孩子结点完成搜寻多个地点。在每一次迭代更新目标位置**** 使用一个队列存储所有待搜寻地点每次迭代从队列中取出一个地点进行搜寻当队列为空时所有地点都被搜寻完毕。 黑板(blackboard) 为了存储可以被多个结点访问的共享信息(比如上面提到的存储有所有待搜寻地点的队列)我们引入黑板(blackboard)的概念。黑板是一块可以被结点读写的公共存储区。 针对我们的例子我们为行为树添加一个Repeat装饰器结点和一个GetLoc的动作结点用来在每一次迭代读取新的搜寻地址如下图所示 我们也可以利用黑板(blackboard)实现其它一些任务。比如在找到苹果或橘子后在黑板上记录下它们的位置信息然后在添加的Speak动作结点中读取它们让机器人说出在哪里找到了苹果或橘子。还有对于找到的物体不同后续结点可以根据黑板记录的信息采取不同的处理规则。 行为树和有限状态机的比较 读者可能想了解行为树和有限状态机哪个更好。下面这些观点可以供大家参考 理论上行为树和状态机具有相同的表达能力可以实现相同的功能。行为树更好还是状态机更好主要看所要定义的行为是更偏向模块化还是更偏向反应式。一般来说行为树更方便进行组合和修改状态机更方便进行反应式动作设计。 1以机器人捡起一个物体的任务为例这需要机器人先移动到物体附近然后夹起物体最后再移动回机器人原来所处的位置。我们分别用行为树和状态机实现它们如下图所示 ​ 左侧为行为树实现右侧为状态机实现 2如果我们想要进一步修改行为比如检测夹子是否处于可以抓起物体的位置然后再夹紧夹子。对于行为树我们只需要插入一个子树就能完成期望的修改。但对于状态机我们需要重写多个转换操作。也就是说行为树更便于进行组合(modularity)和模块化。下图给出了修改后的行为树和状态机图示 修改后的行为树和状态机 3对于反应式行为比如机器人低电量时需要马上回到电源处即使它还在执行某个任务的过程中。如果使用行为树来实现这会非常麻烦我们需要在任意任务的子树中支持充电行为。但对于状态机来说实现起来就很简单只需要从所有其它动作连线到充电动作即可。 ​ 有限状态机可以在任意两个结点添加转换方便地实现反应式行为​ 更进一步通过对状态分层(也就是层次状态机HFSM)建立超级状态Nominal我们可以简化状态间的转换实现 状态机和行为树联合使用 行为树更好还是状态机更好需要看具体要解决的问题个人认为有限状态机更方便管理高优先级的操作行为(比如机器人处于正常状态还是充电状态)行为树更适合定义复杂的行为比如处理错误恢复等等。实践中混合使用两者可能会是更好的选择。下图给出了混合使用行为树和状态机定义我们例子中的机器人行为的图示 ​ 高优先级行为使用状态机复杂行为使用行为树实现​
http://www.yutouwan.com/news/367392/

相关文章:

  • 建材建设网站做网站是什么专业
  • 虚拟主机销售网站模板苏州高端网站制作机构
  • 北京建设网站公司网站承建商有哪些
  • 免费软件不收费网站医疗网站建设好么
  • 英文网站建设方案模板高校北京公司网站建设公司
  • 网站建设与管理 管理课程快点tv下载安装
  • 专业企业网站建设哪家服务好河南重大项目建设网站
  • 网站源码之家oa软件开发公司
  • 做网站年薪百万购物网站cookie
  • 可直接打开网站的网页微信如何做积分商城网站
  • 比较还做的调查网站个人网站备案简介
  • 微网站的优势怎么样让客户做网站和小程序
  • 一般网站字体织梦手机网站
  • 深圳建设局网站首页怎样在建设部网站上查公司信息
  • 做网站 就上宝华建站石家庄外贸建站公司
  • 丽江旅游网站建设wordpress畅言怎么样
  • 中国对外贸易网站怎么做网站页面代码搜索
  • 北京网站设计公司招聘信息微信公众号和小程序的区别
  • 手机创建网站教程wordpress电影主题公园
  • 建设银行 网站无法打开wordpress一键登录
  • wordpress邮箱插件网站seo应用
  • 广东华星建设集团网站工程建设项目管理系统平台
  • 网站开发最佳组合京东商城网上购物京东超市
  • 网站关键词过多wordpress回复查看插件
  • 网站布局的三种基本方法国外设计网站app吗
  • 银川网站建设联系电话用织梦搭建网站
  • 枣庄公司网站建设怎样自己免费搭建网站
  • 宁夏建设局官方网站男女明星直接做的视频网站
  • 广州微网站制作永久免费域名
  • 西安网站建设问问q778925409耍強dede网站地图html文件