CN115545213B - 一种基于图形化行为树和强化学习的建模方法及装置 - Google Patents
一种基于图形化行为树和强化学习的建模方法及装置 Download PDFInfo
- Publication number
- CN115545213B CN115545213B CN202211256186.8A CN202211256186A CN115545213B CN 115545213 B CN115545213 B CN 115545213B CN 202211256186 A CN202211256186 A CN 202211256186A CN 115545213 B CN115545213 B CN 115545213B
- Authority
- CN
- China
- Prior art keywords
- training
- behavior tree
- reinforcement learning
- api
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于图形化行为树和强化学习的建模方法及装置,该方法包括:获取行为对象的图元信息;在web界面,对所述图元信息进行处理,得到图形化行为树模型;在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境;在所述训练环境中,获取行为树数据信息和强化学习训练配置数据信息;对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程;利用所述训练工程,创建训练任务;启动所述训练任务,对所述图形化行为树模型进行训练,并保存模型。本发明方法减少了强化学习模型训练对硬件资源的硬性要求,同时也缩短了训练时间,解决了目前强化学习技术无法大规模生产应用的困境。
Description
技术领域
本发明涉及强化学习建模技术领域,尤其涉及一种基于图形化行为树和强化学习的建模方法及装置。
背景技术
行为树是一种形式化的图形建模语言,主要用于系统和软件工程。行为树采用明确定义的符号来表示数百甚至数千种自然语言需求,这些需求通常用于表达大规模软件集成系统的利益相关者需求。
行为树的决策方式基于其树形数据结构,在需要进行决策时,从树的根节点出发,按照一定顺序遍历子节点,遍历的过程中进行一系列的条件判断,决策得到最后的行为节点并执行。行为树由若干节点组成,节点可以分为三大类:根节点、控制类节点和行为类节点。
根节点:行为树必须包含一个根节点,根节点是行为树决策的起始,它只能有一个子节点。
行为类节点:行为类节点通常绑定具体的游戏逻辑,又可以分为条件节点和动作节点,条件节点通常是读取游戏世界的状态,例如判断自身血量、敌人数量等,动作节点通常是改变游戏世界状态,例如攻击、逃跑、释放技能等,在行为树中,行为类节点都是叶子节点,且叶子节点只能是行为类节点。
控制类节点:与游戏世界以及游戏逻辑没有任何关系,作用是驱动决策逻辑、限制行为类节点,控制类节点不能是叶子节点,必须包含以其他控制类节点或行为类节点为子节点。
强化学习(Reinforcement Learning,RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。
强化学习模型的训练需要进行随机探索,一般来说,强化学习模型往往有着庞大的需要探索的空间{(S,A)},即便对于相对简单的表格性问题,需要的探索空间也很大。需要探索的空间大小约等于状态大小与动作空间大小的乘积。
现有的强化学习模型训练技术由于探索空间异常庞大所以需要的硬件资源相当庞大,同时训练时间也随着探索空间的增大而延长,这样就导致了强化学习技术在应用上的瓶颈。因此研究减少强化学习模型训练对硬件资源要求,缩短训练时间很有必要。
发明内容
本发明所要解决的技术问题在于,提供一种基于图形化行为树和强化学习的建模方法及装置,减少强化学习模型训练对硬件资源的硬性要求,同时也缩短训练时间,解决目前强化学习技术无法大规模生产应用的问题。
为了解决上述技术问题,本发明实施例第一方面公开了一种基于图形化行为树和强化学习的建模方法,所述方法包括:
S1,获取行为对象的图元信息;
在web界面,对所述图元信息进行处理,得到图形化行为树模型;
所述图形化行为树模型包括行为树解析器、行为树执行器、根节点、控制类节点和行为类节点;
所述web界面,包括交互环境、图元API、训练图元API、强化学习API、行为树保存API、数据库操作API、训练工程API、资源管理API、算法管理API、神经网络API;
S2,在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境;
S3,在所述训练环境中,获取图形化行为树数据信息和强化学习训练配置数据信息;
S4,对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程;
S5,利用所述训练工程,创建训练任务;
S6,启动所述训练任务,对所述图形化行为树模型进行训练,得到训练行为树模型,所述训练行为树模型为基于图形化行为树和强化学习的模型。
作为一种可选的实施方式,在本发明实施例第一方面中,所述在web界面对所述图元信息进行处理,得到图形化行为树模型,包括:
S11,在web界面,调用图元API生成图元数据;
S12,对所述图元数据进行处理,建立图元关系,得到图元关系数据;
S13,利用所述图元关系数据,绘制学习节点,添加训练执行的动作节点,调用训练图元API创建训练相关数据;
S14,在web界面,利用所述训练相关数据,绘制得到图形化行为树模型。
作为一种可选的实施方式,在本发明实施例第一方面中,所述在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境,包括:
S21,在web界面,调用强化学习API,生成强化学习算法框架;
S22,在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成环境框架;
S23,在web界面,选择神经网络,触发新建任务,对点击事件进行监听,生成神经网络框架;
S24,在web界面,对所述强化学习算法框架、所述环境框架、所述神经网络框架进行整合处理,生成得到训练环境。
作为一种可选的实施方式,在本发明实施例第一方面中,所述对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程,包括:
S31,在web界面,对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到包含学习节点的行为树模型xml数据;
S32,调用数据库操作API,将所述行为树模型xml数据保存到数据库中;
S33,对所述数据库中的行为树模型xml数据进行处理,生成得到强化学习配置信息;
S34,调用训练工程API,根据训练环境,利用所述强化学习配置信息,匹配相应的训练工程代码,生成得到训练工程。
作为一种可选的实施方式,在本发明实施例第一方面中,所述利用所述训练工程,创建训练任务,包括:
S41,在web界面,调用资源管理API,为当前创建的训练任务分配相应的计算资源;
S42,在web界面中,调用算法管理API,利用相应算法,对参数列表进行配置,对算法超参数进行调整,得到超参数配置文件;
S43,在web界面中,调用神经网络API,生成相应的神经网络代码;
S44,在web界面中,选择样本池大小、迭代次数、模型保存周期参数,调用API生成相应代码配置;
S45,将所述计算资源、超参数配置文件、神经网络代码、相应代码配置输入到所述训练工程,完成训练任务创建。
作为一种可选的实施方式,在本发明实施例第一方面中,所述启动所述训练任务,对所述图形化行为树模型进行训练,并保存模型,包括:
S51,预设行为树解析器,启动所述训练任务,利用所述行为树解析器对所述行为树模型xml数据进行解析,得到可执行代码对象;
S52,匹配所述图形化行为树模型的学习节点信息,获取所述学习节点中动作空间大小,修改训练工程配置信息;
S53,初始化训练环境、强化学习算法、行为树执行器;
S54,启动行为树执行器,执行所述图形化行为树模型;
S55,在所述训练环境中,利用所述图形化行为树模型,监听学习节点,当所述图形化行为树执行至学习节点时,调用强化学习训练API,进行样本数据采集;
S56,当所述样本数据采集完成后,进行强化学习模型的训练迭代,并根据预设的模型保存周期的配置要求,进行模型的保存。
作为一种可选的实施方式,在本发明实施例第一方面中,所述行为树模型xml数据包含行为树的根节点root、控制类节点、动作节点、前置条件及节点关系描述信息;
所述root节点由root标签描述;
所述控制类节点和动作节点由mxCell标签描述;
所述mxCell标签包括type参数、NodeID参数、id参数、vertex参数、edge参数、source参数、target参数;
所述type参数表示节点的类型,NodeID参数表示节点的编号,id参数表示节点的唯一标识,vertex参数表示mxCell标签描述的是节点类信息,edge参数描述当前标签为关系标签,source参数表示父节点的id,target参数表示目标节点的id。
本发明第二方面公开了一种基于图形化行为树和强化学习的建模装置,所述装置包括:
行为树绘制模块,用于获取行为对象的图元信息;
在web界面,对所述图元信息进行处理,得到图形化行为树模型;
所述图形化行为树模型包括行为树解析器、行为树执行器、根节点、控制类节点和行为类节点;
所述web界面,包括交互环境、图元API、训练图元API、强化学习API、行为树保存API、数据库操作API、训练工程API、资源管理API、算法管理API、神经网络API;
训练环境创建模块,用于在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境;
配置数据信息获取模块,用于在所述训练环境中,获取图形化行为树数据信息和强化学习训练配置数据信息;
训练工程生成模块,用于对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程;
创建训练任务模块,用于利用所述训练工程,创建训练任务;
模型训练及保存模块,用于启动所述训练任务,对所述图形化行为树模型进行训练,得到训练行为树模型,所述训练行为树模型为基于图形化行为树和强化学习的模型。
作为一种可选的实施方式,在本发明实施例第二方面中,所述在web界面对所述图元信息进行处理,得到图形化行为树模型,包括:
S11,在web界面,调用图元API生成图元数据;
S12,对所述图元数据进行处理,建立图元关系,得到图元关系数据;
S13,利用所述图元关系数据,绘制学习节点,添加训练执行的动作节点,调用训练图元API创建训练相关数据;
S14,在web界面,利用所述训练相关数据,绘制得到图形化行为树模型。
作为一种可选的实施方式,在本发明实施例第二方面中,所述在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境,包括:
S21,在web界面,调用强化学习API,生成强化学习算法框架;
S22,在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成环境框架;
S23,在web界面,选择神经网络,触发新建任务,对点击事件进行监听,生成神经网络框架;
S24,在web界面,对所述强化学习算法框架、所述环境框架、所述神经网络框架进行整合处理,生成得到训练环境。
作为一种可选的实施方式,在本发明实施例第二方面中,所述对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程,包括:
S31,在web界面,对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到包含学习节点的行为树模型xml数据;
S32,调用数据库操作API,将所述行为树模型xml数据保存到数据库中;
S33,对所述数据库中的行为树模型xml数据进行处理,生成得到强化学习配置信息;
S34,调用训练工程API,根据训练环境,利用所述强化学习配置信息,匹配相应的训练工程代码,生成得到训练工程。
作为一种可选的实施方式,在本发明实施例第二方面中,所述利用所述训练工程,创建训练任务,包括:
S41,在web界面,调用资源管理API,为当前创建的训练任务分配相应的计算资源;
S42,在web界面中,调用算法管理API,利用相应算法,对参数列表进行配置,对算法超参数进行调整,得到超参数配置文件;
S43,在web界面中,调用神经网络API,生成相应的神经网络代码;
S44,在web界面中,选择样本池大小、迭代次数、模型保存周期参数,调用API生成相应代码配置;
S45,将所述计算资源、超参数配置文件、神经网络代码、相应代码配置输入到所述训练工程,完成训练任务创建。
作为一种可选的实施方式,在本发明实施例第二方面中,所述启动所述训练任务,对所述图形化行为树模型进行训练,并保存模型,包括:
S51,预设行为树解析器,启动所述训练任务,利用所述行为树解析器对所述行为树模型xml数据进行解析,得到可执行代码对象;
S52,匹配所述图形化行为树模型的学习节点信息,获取所述学习节点中动作空间大小,修改训练工程配置信息;
S53,初始化训练环境、强化学习算法、行为树执行器;
S54,启动行为树执行器,执行所述图形化行为树模型;
S55,在所述训练环境中,利用所述图形化行为树模型,监听学习节点,当所述图形化行为树执行至学习节点时,调用强化学习训练API,进行样本数据采集;
S56,当所述样本数据采集完成后,进行强化学习模型的训练迭代,并根据预设的模型保存周期的配置要求,进行模型的保存。
作为一种可选的实施方式,在本发明实施例第二方面中,所述行为树模型xml数据包含行为树的根节点root、控制类节点、动作节点、前置条件及节点关系描述信息;
所述root节点由root标签描述;
所述控制类节点和动作节点由mxCell标签描述;
所述mxCell标签包括type参数、NodeID参数、id参数、vertex参数、edge参数、source参数、target参数;
所述type参数表示节点的类型,NodeID参数表示节点的编号,id参数表示节点的唯一标识,vertex参数表示mxCell标签描述的是节点类信息,edge参数描述当前标签为关系标签,source参数表示父节点的id,target参数表示目标节点的id。
本发明第三方面公开了另一种基于图形化行为树和强化学习的建模装置,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明实施例第一方面公开的基于图形化行为树和强化学习的建模方法中的部分或全部步骤。
本发明第四方面公开了一种计算机存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明实施例第一方面公开的基于图形化行为树和强化学习的建模方法中的部分或全部步骤。
与现有技术相比,本发明实施例具有以下有益效果:
本发明提供了一种基于图形化行为树和强化学习的建模方法,减少了强化学习模型训练对硬件资源的硬性要求,同时也缩短了训练时间,解决了目前强化学习技术无法大规模生产应用的困境。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例公开的一种基于图形化行为树和强化学习的建模方法的流程示意图;
图2是本发明实施例公开的一种基于图形化行为树和强化学习的建模方法执行流程图示意图;
图3是本发明实施例公开的一种基于图形化行为树和强化学习的建模装置的流程示意图;
图4是本发明实施例公开的另一种基于图形化行为树和强化学习的建模装置示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明公开了一种基于图形化行为树和强化学习的建模方法及装置,能够获取行为对象的图元信息;在web界面对所述图元信息进行处理,得到图形化行为树模型;在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境;获取行为树数据信息和强化学习训练配置数据信息;对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程;利用所述训练工程,创建训练任务;启动所述训练任务,对所述行为树模型进行训练,并保存模型。
实施例一
请参阅图1,图1是本发明实施例公开的一种基于图形化行为树和强化学习的建模方法的流程示意图。其中,图1所描述的基于图形化行为树和强化学习的建模方法可以应用于机器学习及其相关技术领域,本发明实施例不做限定。如图1所示,该基于图形化行为树和强化学习的建模方法可以包括以下操作:
S1,获取行为对象的图元信息;
在web界面,对所述图元信息进行处理,得到图形化行为树模型;
所述图形化行为树模型包括行为树解析器、行为树执行器、根节点、控制类节点和行为类节点;
所述web界面,包括交互环境、图元API、训练图元API、强化学习API、行为树保存API、数据库操作API、训练工程API、资源管理API、算法管理API、神经网络API;
S2,在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境;
S3,在所述训练环境中,获取图形化行为树数据信息和强化学习训练配置数据信息;
S4,对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程;
S5,利用所述训练工程,创建训练任务;
S6,启动所述训练任务,对所述图形化行为树模型进行训练,得到训练行为树模型,所述训练行为树模型为基于图形化行为树和强化学习的模型。
可选的,所述web界面主要包含任务基础信息配置(如任务名称、任务描述等)、环境的选择(环境指的是仿真引擎或者游戏客户端之类(这些需要通过docker image的方式上传))、工程选择(任务的运行需要依赖训练工程,也就是生成的训练工程框架代码)、采集节点配置(训练过程中数据采集的节点数量,启docker container的数量)、训练节点数量(训练节点表示分布式训练的节点数量);
填写完如上信息后,系统可以根据环境选择的信息匹配相应的环境、根据采集节点配置信息启动相应数量的环境程序、根据训练节点信息启动相应数量的训练worker等。
所述在web界面对所述图元信息进行处理,得到图形化行为树模型,包括:
S11,在web界面,调用图元API生成图元数据;
可选的,图元数据包括节点、条件、动作等图元;
S12,对所述图元数据进行处理,建立图元关系,得到图元关系数据;
S13,利用所述图元关系数据,绘制学习节点,用于标注和生成AI模型训练框架代码;添加训练执行的动作节点,调用训练图元API创建训练相关数据;
S14,在web界面,利用所述训练相关数据,绘制得到图形化行为树模型。
可选的,所述在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境,包括:
S21,在web界面,调用强化学习API,生成强化学习算法框架,用户可以自定义算法以及奖励函数;
可选的,所述强化学习算法,包括DQN、PPO、APPO、DDPPO、MADDPG、PG等强化学习算法;
可选的,强化学习API包含配置操作:
配置读取(用于读取生成强化学习工程依赖的基础信息(包含名称、版本等)、实体信息(指的是智能模型可控制的实体,如游戏中的人物、仿真中的飞机等))、算法配置(用户可以选择想要使用的算法,如DQN)、行为树模型(指用户构建完成的行为树模型);
配置加载(用于将读取的配置数据加载至训练工程中的config中);
代码生成(用于自动生成训练工程的框架代码)。
S22,在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成环境框架,用户可以自定义训练环境;
S23,在web界面,选择神经网络,触发新建任务,对点击事件进行监听,生成神经网络框架,用户可以自定义神经网络;
S24,在web界面,对所述强化学习算法框架、所述环境框架、所述神经网络框架进行整合处理,生成得到训练环境。
可选的,所述对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程,包括:
S31,在web界面,对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到包含学习节点的行为树模型xml数据;
可选的,行为树模型xml数据,数据示例如下;
所述行为树模型xml数据包含行为树的根节点root、控制类节点、动作节点、前置条件及节点关系描述信息;
所述root节点由root标签描述;
所述控制类节点和动作节点由mxCell标签描述;
所述mxCell标签包括type参数、NodeID参数、id参数、vertex参数、edge参数、source参数、target参数;
所述type参数表示节点的类型,NodeID参数表示节点的编号,id参数表示节点的唯一标识,vertex参数表示mxCell标签描述的是节点类信息,edge参数描述当前标签为关系标签,source参数表示父节点的id,target参数表示目标节点的id。
S32,调用数据库操作API,将所述行为树模型xml数据保存到数据库中;
可选的,数据库操作API包括数据的保存、修改、删除等接口;
S33,对所述数据库中的行为树模型xml数据进行处理,生成得到强化学习配置信息;
S34,调用训练工程API,根据训练环境,利用所述强化学习配置信息,匹配相应的训练工程代码,生成得到训练工程。
可选的,所述利用所述训练工程,创建训练任务,包括:
S41,在web界面,调用资源管理API,为当前创建的训练任务分配相应的计算资源;
S42,在web界面中,调用算法管理API,利用相应算法,对参数列表进行配置,对算法超参数进行调整,得到超参数配置文件;
S43,在web界面中,调用神经网络API,生成相应的神经网络代码;
S44,在web界面中,选择样本池大小、迭代次数、模型保存周期参数,调用API生成相应代码配置;
S45,将所述计算资源、超参数配置文件、神经网络代码、相应代码配置输入到所述训练工程,完成训练任务创建。
可选的,所述启动所述训练任务,对所述图形化行为树模型进行训练,并保存模型,包括:
S51,预设行为树解析器,启动所述训练任务,利用所述行为树解析器对所述行为树模型xml数据进行解析,得到可执行代码对象;
行为树解析器是指通过读取用户构建行为树生成的xml配置数据,解析其中的行为树节点(包括顺序节点、选择节点、并行节点、条件节点、学习节点等),自动生成可用于系统控制执行的代码。
S52,匹配所述图形化行为树模型的学习节点信息,获取所述学习节点中动作空间大小,修改训练工程配置信息;
S53,初始化训练环境、强化学习算法、行为树执行器;
S54,启动行为树执行器,执行所述图形化行为树模型;
S55,在所述训练环境中,利用所述图形化行为树模型,监听学习节点,当所述图形化行为树执行至学习节点时,调用强化学习训练API,进行样本数据采集;
所述学习节点是行为树控制节点的变种,行为树解析器会通过xml数据生成可执行的代码,在生成过程中检测学习节点时,会将节点下包含的子树或叶子节点(仿真实体的动作,如攻击、制导、释放技能等)进行计算,计算出当前节点的动作空间(就是智能体可选择的动作或者子树),并将计算结果添加至任务的配置中,用于后续的训练。
S56,当所述样本数据采集完成后,进行强化学习模型的训练迭代,并根据预设的模型保存周期的配置要求,进行模型的保存。
可选的,训练环境主要用于强化学习训练样本采集过程中与实体运行环境(如仿真引擎Xsim、王者荣耀客户端等)数据交互,包含:
获取状态空间数据接口(如仿真中的战场数据:雷达、实体位置等/王者荣耀中的玩家位置、敌方血量等);
时间推进接口,用于在仿真或者游戏中控制游戏的进程(如仿真中,推进仿真时间,游戏中推进游戏时间等)。
环境重置接口,用于重置环境(如重新开始游戏、重新开始仿真等操作);
环境结束接口,用于终止实体运行环境(如关闭仿真引擎、关闭游戏客户端等操作);
可选的,智能模型的训练过程分为:
数据采集,通过环境框架中的接口函数,获取环境中的观测信息(如智能体的位置、敌方的血量等),获取后通过数据处理的函数接口将数据进行归一化等处理,数据处理完成后将数据存放入样本池中,当样本池数量达到一定数值时(默认100),进入特征提取阶段;
特征提取,通过神经网络对采样的数据进行计算,提取相应的特征,特征通过神经元的方式进行保存;
策略学习,特征提取完成后通过强化学习算法进行智能体策略的学习,学习过程是标准的马尔科夫决策过程;
权重保存,学习的过程中会不断更新计算权重数据;
模型评估,学习过程中,会将学习的策略不断的进行评估,同时根据评估的情况进行权重参数的调整;
模型保存,当智能体的决策不断趋于稳定且向好时,会将最好的模型参数进行保存。
实施例二
图2是本发明实施例公开的一种基于图形化行为树和强化学习的建模方法执行流程图示意图。如图2所示,该方法包括以下步骤:
绘制行为树:提供了可视化的行为树绘制页面,用户可以通过拖拽的方式进行行为树规则模型的构建,包括添加节点、删除节点、添加动作、绑定实体、绑定算法等操作;当完成行为树规则模型的构建(行为树的构建需要包含学习节点),可进行规则模型以及相关数据的保存;
创建训练工程:训练工程的创建提供了两种方式,一种是一键创建和流程创建,一键创建功能可以直接依赖绘制行为树功能页的配置信息直接生成训练工程;训练工程生成后包含环境模块、智能体模块、神经网络模块、强化学习算法模块、行为规则模块、主函数模块;训练工程创建时会读取行为树配置xml以及基础的工程框架代码;工程生成以后,可以通过web页面进行修改编辑(定制化工程时使用)。
创建训练任务:当行为树工程创建完成后用户可以通过web页面编辑、填写任务的相关配置信息,如任务名称、环境选择、工程选择、采集节点数量、训练节点数量等;当用户通过web页面将如上信息填写完成后,将建立任务的容器(相当于任务的运行环境);
开始训练:在任务管理的功能页面中,用户可以通过任务开始按钮,运行任务,任务运行开始后将进入智能模型训练,模型训练过程中会使用环境模块与环境进行数据交互,通过强化学习训练框架进行智能模型的训练,同时训练框架会调用硬件资源的调度框架进行硬件资源的申请与使用(如GPU、内存等);
模型保存:当模型的决策趋于稳定且向好时,会将模型以文件的形式保存至系统中,用户可以通过模型管理功能,对训练模型进行下载、删除等管理。
实施例三
请参阅图3,图3是本发明实施例公开的一种基于图形化行为树和强化学习的建模装置的流程示意图:
S301,行为树绘制模块,用于获取行为对象的图元信息;
在web界面,对所述图元信息进行处理,得到图形化行为树模型;
所述图形化行为树模型包括行为树解析器、行为树执行器、根节点、控制类节点和行为类节点;
所述web界面,包括交互环境、图元API、训练图元API、强化学习API、行为树保存API、数据库操作API、训练工程API、资源管理API、算法管理API、神经网络API;
S302,训练环境创建模块,用于在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境;
S303,配置数据信息获取模块,用于在所述训练环境中,获取图形化行为树数据信息和强化学习训练配置数据信息;
S304,训练工程生成模块,用于对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程;
S305,创建训练任务模块,用于利用所述训练工程,创建训练任务;
S306,模型训练及保存模块,用于启动所述训练任务,对所述图形化行为树模型进行训练,得到训练行为树模型,所述训练行为树模型为基于图形化行为树和强化学习的模型。
实施例四
请参阅图4,图4是本发明实施例公开的另一种基于图形化行为树和强化学习的建模装置示意图。如图4所示,该装置可以包括:
存储有可执行程序代码的存储器401;
与存储器401耦合的处理器402;
处理器402调用存储器401中存储的可执行程序代码,用于执行实施例一-实施例二所描述的基于图形化行为树和强化学习的建模方法中的步骤。
以上所描述的装置实施例仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施例的具体描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
最后应说明的是:本发明实施例公开的一种基于图形化行为树和强化学习的建模方法及装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。
Claims (10)
1.一种基于图形化行为树和强化学习的建模方法,其特征在于,所述方法包括:
S1,获取行为对象的图元信息;
在web界面,对所述图元信息进行处理,得到图形化行为树模型;
所述图形化行为树模型包括行为树解析器、行为树执行器、根节点、控制类节点和行为类节点;
所述web界面,包括交互环境、图元API、训练图元API、强化学习API、行为树保存API、数据库操作API、训练工程API、资源管理API、算法管理API、神经网络API;
S2,在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境;
S3,在所述训练环境中,获取图形化行为树数据信息和强化学习训练配置数据信息;
S4,对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程;
S5,利用所述训练工程,创建训练任务;
S6,启动所述训练任务,对所述图形化行为树模型进行训练,得到训练行为树模型,所述训练行为树模型为基于图形化行为树和强化学习的模型。
2.根据权利要求1所述的基于图形化行为树和强化学习的建模方法,其特征在于,所述在web界面对所述图元信息进行处理,得到图形化行为树模型,包括:
S11,在web界面,调用图元API生成图元数据;
S12,对所述图元数据进行处理,建立图元关系,得到图元关系数据;
S13,利用所述图元关系数据,绘制学习节点,添加训练执行的动作节点,调用训练图元API创建训练相关数据;
S14,在web界面,利用所述训练相关数据,绘制得到图形化行为树模型。
3.根据权利要求1所述的基于图形化行为树和强化学习的建模方法,其特征在于,所述在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境,包括:
S21,在web界面,调用强化学习API,生成强化学习算法框架;
S22,在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成环境框架;
S23,在web界面,选择神经网络,触发新建任务,对点击事件进行监听,生成神经网络框架;
S24,在web界面,对所述强化学习算法框架、所述环境框架、所述神经网络框架进行整合处理,生成得到训练环境。
4.根据权利要求1所述的基于图形化行为树和强化学习的建模方法,其特征在于,所述对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程,包括:
S31,在web界面,对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到包含学习节点的行为树模型xml数据;
S32,调用数据库操作API,将所述行为树模型xml数据保存到数据库中;
S33,对所述数据库中的行为树模型xml数据进行处理,生成得到强化学习配置信息;
S34,调用训练工程API,根据训练环境,利用所述强化学习配置信息,匹配相应的训练工程代码,生成得到训练工程。
5.根据权利要求1所述的基于图形化行为树和强化学习的建模方法,其特征在于,所述利用所述训练工程,创建训练任务,包括:
S41,在web界面,调用资源管理API,为当前创建的训练任务分配相应的计算资源;
S42,在web界面中,调用算法管理API,利用相应算法,对参数列表进行配置,对算法超参数进行调整,得到超参数配置文件;
S43,在web界面中,调用神经网络API,生成相应的神经网络代码;
S44,在web界面中,选择样本池大小、迭代次数、模型保存周期参数,调用API生成相应代码配置;
S45,将所述计算资源、超参数配置文件、神经网络代码、相应代码配置输入到所述训练工程,完成训练任务创建。
6.根据权利要求1所述的基于图形化行为树和强化学习的建模方法,其特征在于,所述启动所述训练任务,对所述图形化行为树模型进行训练,并保存模型,包括:
S51,预设行为树解析器,启动所述训练任务,利用所述行为树解析器对所述行为树模型xml数据进行解析,得到可执行代码对象;
S52,匹配所述图形化行为树模型的学习节点信息,获取所述学习节点中动作空间大小,修改训练工程配置信息;
S53,初始化训练环境、强化学习算法、行为树执行器;
S54,启动行为树执行器,执行所述图形化行为树模型;
S55,在所述训练环境中,利用所述图形化行为树模型,监听学习节点,当所述图形化行为树执行至学习节点时,调用强化学习训练API,进行样本数据采集;
S56,当所述样本数据采集完成后,进行强化学习模型的训练迭代,并根据预设的模型保存周期的配置要求,进行模型的保存。
7.根据权利要求3所述的基于图形化行为树和强化学习的建模方法,其特征在于,所述行为树模型xml数据包含行为树的根节点root、控制类节点、动作节点、前置条件及节点关系描述信息;
所述根节点root由root标签描述;
所述控制类节点和动作节点由mxCell标签描述;
所述mxCell标签包括type参数、NodeID参数、id参数、vertex参数、edge参数、source参数、target参数;
所述type参数表示节点的类型,NodeID参数表示节点的编号,id参数表示节点的唯一标识,vertex参数表示mxCell标签描述的是节点类信息,edge参数描述当前标签为关系标签,source参数表示父节点的id,target参数表示目标节点的id。
8.一种基于图形化行为树和强化学习的建模装置,其特征在于,所述装置包括:
行为树绘制模块,用于获取行为对象的图元信息;
在web界面,对所述图元信息进行处理,得到图形化行为树模型;
所述图形化行为树模型包括行为树解析器、行为树执行器、根节点、控制类节点和行为类节点;
所述web界面,包括交互环境、图元API、训练图元API、强化学习API、行为树保存API、数据库操作API、训练工程API、资源管理API、算法管理API、神经网络API;
训练环境创建模块,用于在web界面,选择交互环境,触发新建任务,对点击事件进行监听,生成训练环境;
配置数据信息获取模块,用于在所述训练环境中,获取图形化行为树数据信息和强化学习训练配置数据信息;
训练工程生成模块,用于对所述行为树数据信息和强化学习训练配置数据信息进行处理,得到训练工程;
创建训练任务模块,用于利用所述训练工程,创建训练任务;
模型训练及保存模块,用于启动所述训练任务,对所述图形化行为树模型进行训练,得到训练行为树模型,所述训练行为树模型为基于图形化行为树和强化学习的模型。
9.一种基于图形化行为树和强化学习的建模装置,其特征在于,所述装置包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行如权利要求1-7任一项所述的一种基于图形化行为树和强化学习的建模方法。
10.一种计算机可存储介质,其特征在于,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行如权利要求1-7任一项所述的基于图形化行为树和强化学习的建模方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211256186.8A CN115545213B (zh) | 2022-10-13 | 2022-10-13 | 一种基于图形化行为树和强化学习的建模方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211256186.8A CN115545213B (zh) | 2022-10-13 | 2022-10-13 | 一种基于图形化行为树和强化学习的建模方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115545213A CN115545213A (zh) | 2022-12-30 |
CN115545213B true CN115545213B (zh) | 2023-04-18 |
Family
ID=84734041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211256186.8A Active CN115545213B (zh) | 2022-10-13 | 2022-10-13 | 一种基于图形化行为树和强化学习的建模方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115545213B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103838563A (zh) * | 2012-11-27 | 2014-06-04 | 台博机器人股份有限公司 | 自动装置的程序开发方法 |
CN107085519A (zh) * | 2017-05-04 | 2017-08-22 | 网易(杭州)网络有限公司 | 行为树调试处理方法、装置、系统、存储介质和处理器 |
CN108780303A (zh) * | 2016-03-03 | 2018-11-09 | 玛格兹诺有限公司 | 具有行为树架构的机器人的控制过程 |
CN112698824A (zh) * | 2021-01-06 | 2021-04-23 | 北京有竹居网络技术有限公司 | 视图元件状态管理方法、装置、电子设备和存储介质 |
CN113934416A (zh) * | 2021-10-26 | 2022-01-14 | 山东同圆数字科技有限公司 | 基于图形化语义策略编程的运维管理方法及系统 |
CN114021737A (zh) * | 2021-11-04 | 2022-02-08 | 中国电子科技集团公司信息科学研究院 | 一种基于博弈的强化学习方法、系统、终端及存储介质 |
CN114153943A (zh) * | 2021-11-22 | 2022-03-08 | 之江实验室 | 一种基于知识图谱构建机器人行为树的系统及方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190258953A1 (en) * | 2018-01-23 | 2019-08-22 | Ulrich Lang | Method and system for determining policies, rules, and agent characteristics, for automating agents, and protection |
US11989633B2 (en) * | 2019-01-25 | 2024-05-21 | Stripe, Inc. | Shared learning across separate entities with private data features |
US11534690B2 (en) * | 2020-08-21 | 2022-12-27 | Electronic Arts Inc. | Readable and editable NPC behavior creation using reinforcement learning |
US20220309364A1 (en) * | 2021-03-29 | 2022-09-29 | Advanced Micro Devices, Inc. | Human-like non-player character behavior with reinforcement learning |
-
2022
- 2022-10-13 CN CN202211256186.8A patent/CN115545213B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103838563A (zh) * | 2012-11-27 | 2014-06-04 | 台博机器人股份有限公司 | 自动装置的程序开发方法 |
CN108780303A (zh) * | 2016-03-03 | 2018-11-09 | 玛格兹诺有限公司 | 具有行为树架构的机器人的控制过程 |
CN107085519A (zh) * | 2017-05-04 | 2017-08-22 | 网易(杭州)网络有限公司 | 行为树调试处理方法、装置、系统、存储介质和处理器 |
CN112698824A (zh) * | 2021-01-06 | 2021-04-23 | 北京有竹居网络技术有限公司 | 视图元件状态管理方法、装置、电子设备和存储介质 |
CN113934416A (zh) * | 2021-10-26 | 2022-01-14 | 山东同圆数字科技有限公司 | 基于图形化语义策略编程的运维管理方法及系统 |
CN114021737A (zh) * | 2021-11-04 | 2022-02-08 | 中国电子科技集团公司信息科学研究院 | 一种基于博弈的强化学习方法、系统、终端及存储介质 |
CN114153943A (zh) * | 2021-11-22 | 2022-03-08 | 之江实验室 | 一种基于知识图谱构建机器人行为树的系统及方法 |
Non-Patent Citations (1)
Title |
---|
解方.行为树转换到UML状态机来验证系统需求.《计算机工程与设计》.2013,第第34卷卷(第第10期期),第3710-3716. * |
Also Published As
Publication number | Publication date |
---|---|
CN115545213A (zh) | 2022-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10210434B1 (en) | Artificially intelligent systems, devices, and methods for learning and/or using visual surrounding for autonomous object operation | |
Hu et al. | Hierarchical decision making by generating and following natural language instructions | |
CN111461338A (zh) | 基于数字孪生的智能系统更新方法、装置 | |
Van Otterlo | The logic of adaptive behavior: Knowledge representation and algorithms for adaptive sequential decision making under uncertainty in first-order and relational domains | |
US11534690B2 (en) | Readable and editable NPC behavior creation using reinforcement learning | |
US20170139685A1 (en) | Visual software modeling method to construct software views based on a software meta view | |
US7844424B2 (en) | Human behavioral modeling and simulation framework | |
CN111427549A (zh) | 一种人工智能强化学习服务平台 | |
CN115456150B (zh) | 一种强化学习模型构建方法及系统 | |
CN104102522A (zh) | 交互式游戏中智能非玩家角色的人工情感驱动方法 | |
Bansal et al. | Holist: An environment for machine learning of higher-order theorem proving (extended version) | |
Meziane et al. | Artificial intelligence in software engineering: current developments and future prospects | |
CN112966433A (zh) | 一种基于即时编译的神经动力学仿真方法及装置 | |
JPH04227544A (ja) | 複雑な情報交換システムを通じるデータ流れの分析方法及び装置 | |
CN112973130B (zh) | 虚拟场景的回放模型构建方法、装置、设备及存储介质 | |
CN115545213B (zh) | 一种基于图形化行为树和强化学习的建模方法及装置 | |
CN111612152A (zh) | 一种量子计算机的模拟控制方法、系统及相关组件 | |
CN116911202A (zh) | 一种基于多粒度仿真训练环境的智能体训练方法和装置 | |
Dockhorn | Prediction-based search for autonomous game-playing | |
CN110826695A (zh) | 数据处理方法、装置和计算机可读存储介质 | |
KR20090126237A (ko) | 인간 트랜스페어런시 패러다임 | |
CN111160415B (zh) | 逐层逆化识别模型的生成模型训练方法 | |
CN117724695B (zh) | 大型语言模型的代码生成优化方法、装置、设备及介质 | |
CN117648585B (zh) | 基于任务相似度的智能决策模型泛化方法和装置 | |
Nguyen et al. | Effect handlers for programmable inference |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |