UE5行为树浅析

Tree

什么是树?

树是由节点或顶点和边组成的数据结构,没有任何循环。没有节点的树称为空树或空树。

非空的树由根节点和可能形成层次结构的多层附加节点组成。

  • 树是一种数据结构
  • 树由点和有向边组成
  • 树是连通的,可达的
  • 树有执行顺序
  • 树没有环

Behavoir Tree

行为树(BT)是一种计划执行的数学模型,用于计算机科学、机器人技术、控制系统和视频游戏。

它们以模块化的方式描述有限任务集之间的切换。

它们的强大之处在于能够创建由简单任务组成的非常复杂的任务,而不用担心如何执行这些简单任务。

BT与分层状态机有一些相似之处,关键的区别是行为的主要构建块是任务而不是状态。

如果没有行为树,蓝图依然可以实现功能,但是行为树是可编程的。

由于易于理解,BT更不容易出错,在游戏开发者社区中非常受欢迎。

UE官方描述:

行为树 是虚幻引擎 中创建 AI 的强大工具。从隐藏在阴影中的小蟑螂,到射击游戏中自主向目标开火并寻找回复剂和弹药的机器人,皆可实现。

合成 节点**(Composite)** 描述
选择器(Selector) 从左到右执行分支,通常用于在子树之间进行选择。当选择器找到能够成功执行的子树时,将停止在子树之间移动。举例而言,如果AI正在有效地追逐玩家,选择器将停留在那个分支中,直到它的执行结束,然后转到选择器的父合成节点,继续决策流。
序列(Sequence) 从左到右执行分支,通常用于按顺序执行一系列子项。与选择器节点不同,序列节点会持续执行其子项,直到它遇到失败的节点。举例而言,如果我们有一个序列节点移动到玩家,则会检查他们是否在射程内,然后旋转并攻击。如果检查玩家是否在射程内便已失败,则不会执行旋转和攻击动作
并行(Simple Parallel)(基本用不上,不常用) 简单平行节点有两个"连接"。第一个是主任务,它只能分配一个任务节点(意味着没有合成节点)。第二个连接(后台分支)是主任务仍在运行时应该执行的活动。简单平行节点可能会在主任务完成后立即结束,或者等待后台分支的结束,具体依属性而定。

Sequence只要遇到Flase,后面的都不执行,直接返回 (如果所有都是True,才返回True)

Selector只要遇到True,后面的都不执行,直接返回 (如果所有都是Flase,才返回Flase)

行为树与蓝图相似,皆是以一种可视化方式创建,将一系列具备功能的节点添加并连接至行为树图表。执行逻辑时,行为树会使用一种名为 黑板 的独立资源来存储它需要知道的信息(名为 黑板键),从而做出有根据的决策。

UE中的行为树按照从左到右,从上到下的顺序执行逻辑。操作的数字顺序显示在图表中所放置节点的右上角。

上图中的蓝色节点被称为装饰器(判断条件语句,如果是True就执行下面的,如果是False就不执行了

右键单击 行为树 中的节点时,可以添加提供额外函数的子节点:

子节点 描述
装饰器(Decorator) 也称为条件语句。这种节点附着于另一个节点,决定着树中的一个分支,甚至单个节点是否能够被执行。
服务(Service) 这类节点连接至 任务(Task) 节点和 合成(Composite) 节点,只要它们的分支正在执行,它们就会以所定义的频率执行。这些节点通常用于检查和更新 黑板。它们取代了其他行为树系统中的传统平行(Parallel)节点。

黑板Blackboard

用来记录数据变量

参考资料:

https://dev.epicgames.com/documentation/zh-cn/unreal-engine/behavior-tree-in-unreal-engine---overview

https://en.wikipedia.org/wiki/Behavior_tree_(artificial_intelligence,_robotics_and_control)

相关推荐
CypressTel几秒前
Google发布Gemini 3.7 Flash:企业为何要计算AI智能体的任务总成本——赛柏特AI快讯
人工智能
神奇霸王龙1 分钟前
Agent 准入门控屠夫:5 旗舰 4 维度评估
linux·运维·数据库·ai·ai作画·agent·ai编程
wujian83112 分钟前
怎么用千问生成word文档:从「格式崩」到「一键过」,AI导出鸭打通最后半厘米
人工智能·ai·c#·word·豆包·deepseek·ai导出鸭
一拳不是超人10 分钟前
DeepSeek Harness 为什么敢说"一切皆插件"?拆透 Cordis 引擎的五大核心机制
前端·人工智能·agent
安全指北针13 分钟前
AI编程工具供应链安全实战:当你的AI编码助手成为跳板
人工智能·安全·ai编程
fo安方18 分钟前
视频——工具——视频——ppt——AI生成ppt
人工智能·powerpoint
watersink21 分钟前
机器学习最大熵模型max_entropy_model
人工智能·机器学习
IT_陈寒22 分钟前
Python的GIL让我多写了500行代码
前端·人工智能·后端
迪康Defender31 分钟前
AI 重构终端安全运营:智能分析中枢 AI Insight 模块架构与落地场景深度解析
运维·网络·人工智能·其他·安全·重构·架构
IPHWT 零软网络35 分钟前
技术方案分享|AI Agent 赋能 IVR 导航,解决传统语音呼叫系统交互瓶颈
人工智能·通信系统·rag·ivr·aiagent·智能语音·语音导航