并行节点-–-behaviac

原文

并行(Parallel)节点在一般意义上是并行的执行其子节点,即“一边做A,一边做B”,如下图所示:

在选择或序列节点中,是顺序的一个接一个的执行其子节点,上一个子节点执行结束后,根据其状态是否执行接下来的子节点。而并行节点在逻辑上是“同时”并行的执行所有子节点(但实际也是从上往下依次执行),然后根据所有子节点的状态决定本身的状态。

注意:并行节点每帧都有可能执行所有的子树,大量使用的时候请注意其性能。

如何根据所有子节点的返回状态,来决定并行节点本身的状态呢?并行节点有几个重要属性可以配置,如下图所示:

  • 失败条件:决定并行节点在什么条件下是失败的
  • 成功条件:决定并行节点在什么条件下是成功的
  • 子节点结束继续条件:子节点结束后是重新再循环执行,还是结束后不再执行
  • 退出行为:当并行节点的成功或失败条件满足并返回成功或失败后,是否需要终止掉其他还在运行的子节点
  • 当子节点执行状态既不满足失败条件,也不满足成功条件,且无Running状态子节点时,并行节点将直接返回Failure

在序列节点中,假设其子节点包括了条件节点和其他节点。那么,条件节点实际上是作为其他节点的前提条件,只有条件节点返回Success,下面的其他节点才会得到执行。

并行节点可以用来实现所谓的“上下文相关的前提条件”(context precondition),如下图所示:

并行节点配置条件节点和其他节点,并且失败条件是缺省的配置FAIL_ON_ONE,那么只有当条件节点成功的时候其他节点才被执行,从而条件节点事实上是其他节点的前提条件。

注意:作为前提条件的这种用法是不严谨的,当条件失败的时候,在并行节点返回失败之前,后续的其他节点会多执行一次。所以,请使用“前置”附件来实现这种前置条件的需求。

与序列节点+条件节点方式的不同之处在于,序列节点实现的前提条件只是“进入”其他节点的前提条件,一旦首次进入并开始执行其他节点后,就不再检查该前提条件了。而并行节点实现的前提条件是上下文相关的,不但首次进入并开始执行前需要检查,之后每次执行也都要检查。

具体的执行逻辑可以查看 behaviortree/nodes/composites/parallel.cpp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1016404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

22、Web 与互联网管理实用脚本指南

Web 与互联网管理实用脚本指南 在当今数字化的时代,Web 和互联网管理是确保网站安全、高效运行的关键。本文将介绍两个重要的脚本,一个用于管理 Apache 服务器的密码保护目录,另一个用于使用 SFTP 安全同步文件。 1. 管理 Apache 密码 Apache 网络服务器的一个强大功能是…

135M参数推理模型新突破:trlm-135m如何用三阶段训练实现小模型逻辑飞跃

在大语言模型参数竞赛愈演愈烈的当下,一个仅含135M参数的轻量级模型引发了AI研究界的关注。Tiny Reasoning Language Model(trlm-135m)作为专注于推理能力培养的研究原型,通过创新的三阶段训练范式,证明了小型模型也能…

10、实用脚本工具:温度转换、贷款计算与日程管理

实用脚本工具:温度转换、贷款计算与日程管理 在日常的计算和日程管理中,脚本工具可以极大地提高效率。以下将详细介绍几个实用的脚本,包括温度转换、贷款支付计算以及日程跟踪。 1. 温度转换脚本(convertatemp) 温度转换脚本能够在华氏度(Fahrenheit)、摄氏度(Celsi…

11、优化 Unix 系统的实用脚本与技巧

优化 Unix 系统的实用脚本与技巧 在 Unix 系统的使用过程中,尽管它们大多遵循 POSIX 标准,但不同系统之间仍存在诸多差异。比如,虽然大多数 Unix 或 Linux 系统都有 ls 命令,但并非所有版本都支持 --color 标志;Bourne shell 的不同版本对变量切片的支持情况也不尽相…

12、Unix 脚本实用指南:从文本搜索到系统管理

Unix 脚本实用指南:从文本搜索到系统管理 在 Unix 系统的使用过程中,脚本编程是提高效率、简化操作的重要手段。本文将介绍几个实用的 Unix 脚本,包括文本搜索、文件压缩以及系统管理等方面的脚本,帮助你更好地管理和操作 Unix 系统。 1. cgrep 脚本:带上下文的文本搜索…

15、实用Shell脚本助力系统管理

实用Shell脚本助力系统管理 在Unix或Linux系统管理中,shell脚本发挥着至关重要的作用。管理员作为系统的高级使用者,不仅需要保障系统的稳定运行,还常常通过编写shell脚本来提高工作效率。下面将介绍几个实用的shell脚本及其使用方法。 1. 清理访客账户空间 当多个用户共…

29、云端与图像脚本实用指南

云端与图像脚本实用指南 1. 幻灯片展示脚本 幻灯片展示脚本用于从指定目录显示照片幻灯片,借助 ImageMagick 的 display 实用工具实现。以下是脚本代码: #!/bin/bash # slideshow--Displays a slide show of photos from the specified directory. # Uses ImageMagi…

30、图像魔法棒:ImageMagick实用脚本指南

图像魔法棒:ImageMagick实用脚本指南 1. 水印添加脚本 在处理图像时,为图片添加水印是一项常见的需求。下面是一个使用 ImageMagick 实现水印添加的脚本示例: newfilename="$prefix+wm.$suffix" x composite -dissolve 75% -gravity south $wmfile "$1&q…

大模型通义千问3-VL-Plus - QVQ 视觉推理模型

目录 一、概论 二、代码实现 第一步:新增请求实体类 QvqReasoningRequest 第二步:新增 QVQ 推理服务接口 QvqReasoningService 第三步:新增 QVQ 推理服务实现类 QvqReasoningServiceImpl 第四步 VideoController 三、演示 五、视觉推理…

多模态AI里程碑:智谱AI CogVLM2以190亿参数实现性能跃升,开源生态再添强援

多模态AI里程碑:智谱AI CogVLM2以190亿参数实现性能跃升,开源生态再添强援 【免费下载链接】cogvlm2-llama3-chinese-chat-19B 项目地址: https://ai.gitcode.com/zai-org/cogvlm2-llama3-chinese-chat-19B 在人工智能多模态交互领域&#xff0c…

Angular-loading-bar与$resource集成:优雅处理REST API请求

Angular-loading-bar与$resource集成:优雅处理REST API请求 【免费下载链接】angular-loading-bar A fully automatic loading / progress bar for your angular apps. 项目地址: https://gitcode.com/gh_mirrors/an/angular-loading-bar 在现代化的Angular应…

腾讯开源POINTS-Reader:革新多语言文档OCR技术,600M参数模型实现高效文本提取

腾讯开源POINTS-Reader:革新多语言文档OCR技术,600M参数模型实现高效文本提取 【免费下载链接】POINTS-Reader 腾讯混元POINTS-Reader:端到端文档转换视觉语言模型,结构精简无需后处理。支持中英双语提取,OmniDocBench…

DDD从0到企业级:迭代式学习 (共17章)之 二

DDD模型设计实战:用事件风暴画出业务核心蓝图“上次你说DDD要先明确业务边界,但拿到‘电商下单’这种需求,我还是不知道从哪下手画模型”——这是很多开发者学完DDD基础后最直观的困惑。第一阶段我们搞懂了“实体、值对象”这些“零件”&…

DDD从0到企业级:迭代式学习 (共17章)之 三

“领域模型画完了,限界上下文也定了,但一写代码就打回原形——领域层里全是MyBatis注解,业务逻辑和SQL语句搅在一起”——这是DDD落地中最常见的“断层”问题。第二阶段我们完成了业务蓝图的绘制,第三阶段的核心就是搭建“翻译桥梁…

Calibre-Douban插件:电子书元数据管理的终极解决方案

还在为电子书信息不全而烦恼吗?Calibre-Douban插件为你提供了一站式的电子书元数据管理体验。这款基于网络爬虫技术的Calibre插件,能够从豆瓣图书网站智能抓取完整的书籍信息,让你的电子书库瞬间变得井井有条。📚 【免费下载链接】…

Vue TodoList 待办事项小案例(代码版)

main.js import Vue from vueimport App from ./App.vue// 关闭Vue生产提示 Vue.config.productionTip false// 创建vm new Vue({el: #app,render: h > h(App) })APP.vue <template><div id"root"><div class"todo-container"><d…

AutoGPT交叉销售推荐引擎

AutoGPT交叉销售推荐引擎 在电商平台的运营后台&#xff0c;一位产品经理刚刚提交了一个看似普通的目标&#xff1a;“为购买笔记本电脑的用户设计一套高转化率的配件交叉销售方案。”几小时后&#xff0c;系统自动生成了一份完整的策略报告——包含热销型号分析、竞品捆绑策略…

复健笔记 - Pascal酒吧的爆破

最后选来选去,我决定试试Pascal,这玩意挺古老的,但有着明确的“begin”和“end”范围,如何区分是否真的“end”,只需要看“end”的标点符号是否为"."。Ruby也用“begin”和“end”这个方法,我也正在尝…

多模态检索增强生成:基于Docling与Granite构建企业级智能文档处理系统

引言&#xff1a;多模态AI驱动的信息检索新纪元 【免费下载链接】granite-4.0-h-small 项目地址: https://ai.gitcode.com/hf_mirrors/unsloth/granite-4.0-h-small 在数字化转型加速的今天&#xff0c;企业面临着海量非结构化数据的处理挑战——PDF报告中的图表、技术…

MarkText主题定制完全指南:从零开始打造专属写作空间

MarkText主题定制完全指南&#xff1a;从零开始打造专属写作空间 【免费下载链接】marktext &#x1f4dd;A simple and elegant markdown editor, available for Linux, macOS and Windows. 项目地址: https://gitcode.com/gh_mirrors/ma/marktext 还在为千篇一律的编辑…