behavior tree 介绍

引用

        Introduction to behavior trees - Robohub     这个讲的非常好,建议仔细阅读

        A survey of Behavior Trees in robotics and AI - ScienceDirect

目录

一、行为树的定义

二、行为树的术语

(1) Execution Nodes

(2) Control Nodes

1、Sequence

2、Fallback

3、Parallel

4、Decorator

(3) 总结

三、一个例子Robot example: searching for objects


一、行为树的定义

从根节点开始按具体的顺序遍历执行,直到返回最终状态

•叶节点(Execution Nodes)

与底层代码结合起来,会执行具体的任务(action)或者检查(condition),返回 (success, failure, or running)

•控制结点

接受其子结点返回的状态,并决定下一个将展开哪个结点

二、行为树的术语

行为树的节点每执行一次称为tick

(1) Execution Nodes

可以分为动作节点和条件节点

  • 条件节点

在一个tick之后只能得到success和failure Eg:“is the gripper open?”

  • 动作节点

可以跨越多个ticks Eg: “open the door”

(2) Control Nodes

根据其孩子( can be execution nodes or control nodes themselves. )的状态,如何遍历行为树

1、Sequence

按顺序执行孩子结点直到其中一个孩子结点返回失败状态或所有孩子结点返回成功状态

2、Fallback

按顺序执行孩子结点,直到其中一个孩子结点返回成功状态或所有孩子结点返回失败状态。

3、Parallel

Parallel nodes 当至少有M(1-N)个节点返回成功时返回成功,所有节点失败时返回失败

4、Decorator

用规定的策略去更新被装饰的节点

eg:“Invert” decorator will change Success to Failure, and vice-versa

(3) 总结

三、一个例子Robot example: searching for objects

  • 当只有一个目标点A

  • 但上述考虑是不完全的,我们在执行GoToA之前我们要先检测。例如当机器人已经到目的A时,就不需要再执行动作GoToA。直接FoundObj

  • 当执行环境有多个目标点时,寻找单个物体

  • 当执行环境有多个目标点时,寻找多个物体

因为由于去不同的地点会导致重复过多次,通过decorators and blackboards的引入,可以简化行为树

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沈夢昂志

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值