CN112379992B - 基于角色的多智能体任务协同消息传递及异常处理方法 - Google Patents
基于角色的多智能体任务协同消息传递及异常处理方法 Download PDFInfo
- Publication number
- CN112379992B CN112379992B CN202011409524.8A CN202011409524A CN112379992B CN 112379992 B CN112379992 B CN 112379992B CN 202011409524 A CN202011409524 A CN 202011409524A CN 112379992 B CN112379992 B CN 112379992B
- Authority
- CN
- China
- Prior art keywords
- task
- role
- agent
- message
- manager
- 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
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000005540 biological transmission Effects 0.000 title claims abstract description 36
- 230000007246 mechanism Effects 0.000 claims abstract description 31
- 238000012546 transfer Methods 0.000 claims abstract description 5
- 230000002159 abnormal effect Effects 0.000 claims description 41
- 238000004458 analytical method Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 15
- 230000005856 abnormality Effects 0.000 claims description 12
- 102200003959 rs11556986 Human genes 0.000 claims description 6
- 102220600549 C-C chemokine receptor type 5_S40D_mutation Human genes 0.000 claims description 3
- 102220570201 Pyridoxal-dependent decarboxylase domain-containing protein 1_S40A_mutation Human genes 0.000 claims description 3
- 239000000203 mixture Substances 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 11
- 238000013461 design Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000002716 delivery method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000003672 processing method Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000012384 transportation and delivery Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013439 planning Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 102220635881 Prokineticin receptor 1_S40G_mutation Human genes 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010791 quenching Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 102220482336 tRNA pseudouridine synthase A_S40F_mutation Human genes 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Multi Processors (AREA)
Abstract
本发明属于多智能体消息传递领域,具体涉及了一种基于角色的多智能体任务协同消息传递及异常处理方法,旨在解决现有基于角色的多智能体任务协同系统无法进行高效准确的消息传递和异常处理的问题。本发明包括:基于智能体‑角色‑任务的多层关系构建消息传递机制进行系统消息发送与接收;任务管理器解析事件消息生成任务实例,按照组成关系建立任务实例关系;任务管理器将任务实例发送给相应角色;角色对应的智能体执行当前任务实例;若无相应角色和智能体,则进行角色动态创建和智能体动态匹配;若任务执行失败,则启动异常处理。本发明适用于复杂环境下的多智能体系统进行角色和任务的层次化分配、消息传递及异常处理,任务执行效率和准确率高。
Description
技术领域
本发明属于多智能体消息传递领域,具体涉及了一种基于角 色的多智能体任务协同消息传递及异常处理方法。
背景技术
现有研究工作往往将角色定义为仅发生在分析阶段的概念, 从用例中抽象出来的角色往往用于概念化理解系统。在分析阶段之后, 它们在已实现的系统中并没有实现,因而,目前常见的多智能体协同系 统中没有角色。在大多数情况下,所有角色都是原子结构,不能根据其 他角色定义。但是在异构系统中,动态变化的未知环境下,为实现动态 分配任务、提高集群系统的鲁棒性,角色层的设计和实现将起到关键的 作用。
现有多智能体任务协同中任务环境复杂多变,任务协同过程 异常事件多发,基于角色的多智能体任务协同系统既要统筹任务执行的 全过程又要具备实时突发事件应急处置的能力,因此,本领域还需要一 种消息传递及异常处理方法,可以面向不确定环境、自身能力约束和协 同任务执行的场景系统,实现基于角色的多智能体的高效准确的任务协同。
发明内容
为了解决现有技术中的上述问题,即现有基于角色的多智能 体任务协同系统无法进行高效准确的消息传递和异常处理的问题,本发 明提供了一种基于角色的多智能体任务协同消息传递及异常处理方法, 该消息传递方法包括:
步骤S10,基于智能体-角色-任务的多层关系构建消息传递 机制;
步骤S20,获取事件消息,并通过所述消息传递机制将所述 事件消息发送至任务容器;
步骤S30,所述任务容器生成第一指令并发送至任务管理器; 所述第一指令为事件消息解析指令;
步骤S40,所述任务管理器基于所述第一指令进行所述事件 消息的解析,生成任务实例和第二指令,并按照任务解析关系建立所述 任务实例之间的关系,保存任务实例的ID;所述第二指令为任务实例执 行指令;
步骤S50,所述任务管理器基于所述任务解析关系通过所述 消息传递机制将所述第二指令和任务实例之间的关系发送至相应的角色;
步骤S60,角色对应的智能体在上一任务执行完毕后,执行 当前第二指令对应的任务实例,并生成任务完成消息,通过所述消息传 递机制将所述任务完成消息发送至所述任务管理器;
步骤S70,所述任务管理器基于所述任务完成消息和任务实 例的ID删除对应的任务实例,完成事件执行中的消息传递。
在一些优选的实施例中,所述事件消息包括共享智能体系统 环境信息,敌方目标属性,敌对双方态势,己方下级角色对上级角色的 报告、支援和请求信息,以及己方上级角色对下级角色的命令、通知和 指示信息;
所述敌方目标属性包括敌方性质、数量、位置和状态;
所述敌对双方态势为依据敌对双方现场信息对当前或未来 环境的预测。
在一些优选的实施例中,步骤S40和步骤S50之间还包括角色 动态创建和智能体动态匹配;
所述角色动态创建,在接收所述任务管理器生成并发送的第 三指令后,角色管理器进行角色实例的动态创建;所述第三指令为角色 实例生成指令;
所述智能体动态分配,在接收所述角色管理器生成并发送的 第四指令后,智能体管理器进行智能体实例的动态匹配;所述第四指令 为智能体匹配角色请求。
在一些优选的实施例中,所述角色管理器进行角色实例的动 态创建,其过程为:
步骤S40A,若所述角色管理器中存在所述第三指令对应的 角色类型,则跳转步骤S40C;否则,跳转步骤S40B;
步骤S40B,所述角色管理器向角色管理器发送获取角色类 型请求,所述角色管理器基于所述任务解析关系中任务和角色之间的关 系生成角色类型并发送至所述角色管理器;
步骤S40C,所述角色管理器基于所述角色类型生成角色实 例和智能体匹配角色请求,并将所述智能体匹配角色请求发送至智能体 管理器。
在一些优选的实施例中,所述智能体管理器进行智能体实例 的动态匹配,其过程为:
步骤S40D,所述智能体管理器接收到所述第四指令后,将 所有wait状态的智能体的状态调整为ready;
步骤40E,基于所述组成关系中角色和智能体之间的关系判 断所述智能体管理器中是否存在与角色匹配的智能体实例,若不存在, 则创建智能体实例并与角色匹配。
本发明的另一方面,提出了一种基于角色的多智能体任务协 同消息传递的异常处理方法,基于上述的基于角色的多智能体任务协同 消息传递方法,该异常处理方法包括:
步骤C10,若任务完成失败,所述任务实例生成任务失败消 息,并通过所述消息传递机制将所述任务失败消息发送至分层异常处理 器;
步骤C20,基于所述任务失败消息对应的任务的重要性、异 常处理复杂度和异常产生时间确定异常优先级;
步骤C30,按照异常优先级从高到低的顺序进行异常处理。
在一些优选的实施例中,所述异常优先级为:
根据任务重要性判断异常优先的等级,若所述任务失败消息 对应的任务为与关系,则异常优先级为1;若所述任务失败消息对应的任 务为顺序关系,则异常优先级为2;若所述任务失败消息对应的任务为或 关系,则异常优先级为3;
若任务重要性相同,则根据异常处理复杂度判断异常优先的 等级,从异常处理复杂度低到高,异常优先级为3,4,…,n;
若任务重要性和异常处理复杂度均相同,则异常产生时间越 早的任务失败消息异常优先级更高;
其中,所述异常优先级1,2,3,4,…,n,代表异常优先级从高到 低。
在一些优选的实施例中,所述分层异常处理器包括智能体层 异常处理器、角色层异常处理器和任务层异常处理器;
所述分层异常处理器按照智能体层-角色层-任务层的顺序 进行所述任务完成失败消息的异常处理。
本发明的第三方面,提出了一种存储装置,其中存储有多条 程序,所述程序适于由处理器加载并执行以实现上述的基于角色的多智 能体任务协同消息传递方法以及基于角色的多智能体任务协同消息传递 的异常处理方法。
本发明的第四方面,提出了一种处理装置,包括处理器、存 储装置;所述处理器,适于执行各条程序;所述存储装置,适于存储多 条程序;所述程序适于由处理器加载并执行以实现上述的基于角色的多 智能体任务协同消息传递方法以及基于角色的多智能体任务协同消息传 递的异常处理方法。。
本发明的有益效果:
(1)本发明基于角色的多智能体任务协同消息传递方法, 通过引入角色的定义与设计,可以减少每个智能体负责的任务数量,在 多智能体协商阶段让更少的智能体做出响应,减少了虚拟干扰,使得丢 失的数据包更少,大大提升了多智能体任务协同的效率和准确率,系统 的总体性能更优。
(2)本发明基于角色的多智能体任务协同消息传递方法, 在多个智能体试图占用同一通信信道时,通过角色决定智能体的主导地 位,让不太占主导地位的Agent避开更占主导地位的Agent,避免了通信冲 突,也让更占主导地位的Agent专注于自己的任务,从而进一步提升了多 智能体协同任务的效率和准确率。
(3)本发明基于角色的多智能体任务协同消息传递方法, 消息异常处理具有智能体-角色-任务的层次性,并且根据任务的重要性、 异常处理复杂度和异常产生时间确定异常优先级,更适用于复杂环境下 的多智能体协同任务。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详 细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本发明基于角色的多智能体任务协同消息传递方法 的流程示意图;
图2是本发明基于角色的多智能体任务协同消息传递的异 常处理方法的流程示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以 理解的是,此处所描述的具体实施例仅用于解释相关发明,而非对该发 明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有 关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实 施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明 本申请。
本发明针对不稳定环境集群任务协同问题,研究面向多智能 的任务协同业务,抽象协同层次,构建分层的任务规划协同架构和机制, 规定体系通信拓扑,研究构建多智能体的协同工作机制,突破多智能体 的任务调度和推理技术,设计并完成典型事件的协同响应策略,以实现 多智能体协同环境认知以及面向协同任务的自适应配置。
本发明提供一种基于角色的多智能体任务协同消息传递及 异常处理方法,基于分布式多队列实现多角色智能体间通信,形成面向 “任务-角色-智能体”多层级组织架构的自适应消息传递机制。消息队列 为发布信息、公布处理结果和共享有用信息提供了一个对环境的感知区 域;任务实例的创建和消息模型说明任务动态创建,动态管理的过程; 角色实例的创建和消息模型说明角色动态创建,动态管理的过程;构建 基于Agent调度状态的系统调度机制,调度机制对Agent进行调度。异常 在智能体在执行任务环境下提出,具有优先级。异常优先级由智能体执 行的任务重要性、处理异常的复杂度及异常抛出的时间确定,抛出异常 时的任务越重要,该异常优先级越高;处理方式越简单,异常优先级越 高;前两者无法判别时,则按抛出异常的时间决定异常处理的次序。异 常处理程序具有层次性,位于系统内智能体、角色及任务管理模块,按 照Agent-Role-Task顺序寻找异常处理程序。
本发明的一种基于角色的多智能体任务协同消息传递及异 常处理方法,该消息传递方法包括:
步骤S10,基于智能体-角色-任务的多层关系构建消息传递 机制;
步骤S20,获取事件消息,并通过所述消息传递机制将所述 事件消息发送至任务容器;
步骤S30,所述任务容器生成第一指令并发送至任务管理器; 所述第一指令为事件消息解析指令;
步骤S40,所述任务管理器基于所述第一指令进行所述事件 消息的解析,生成任务实例和第二指令,并按照任务解析关系建立所述 任务实例之间的关系,保存任务实例的ID;所述第二指令为任务实例执 行指令;
步骤S50,所述任务管理器基于所述任务解析关系通过所述 消息传递机制将所述第二指令和任务实例之间的关系发送至相应的角色;
步骤S60,角色对应的智能体在上一任务执行完毕后,执行 当前第二指令对应的任务实例,并生成任务完成消息,通过所述消息传 递机制将所述任务完成消息发送至所述任务管理器;
步骤S70,所述任务管理器基于所述任务完成消息和任务实 例的ID删除对应的任务实例,完成事件执行中的消息传递。
为了更清晰地对本发明基于角色的多智能体任务协同消息 传递及异常处理方法进行说明,下面结合图1对本发明实施例中各步骤 展开详述。
本发明第一实施例的基于角色的多智能体任务协同消息传 递及异常处理方法,包括步骤S10-步骤S70,各步骤详细描述如下:
本发明基于分布式多队列实现多角色智能体间通信,形成面 向“任务-角色-智能体”多层级组织架构的自适应消息传递机制。消息队 列为发布信息、公布处理结果和共享有用信息提供了一个对环境的感知 区域;任务实例的创建和消息模型说明任务动态创建,动态管理的过程; 角色实例的创建和消息模型说明角色动态创建,动态管理的过程;构建基于Agent调度状态的系统调度机制,调度机制对Agent进行调度。
步骤S10,基于智能体-角色-任务的多层关系构建消息传递 机制。
进行消息传递机制的构建在于运用消息队列实现消息存储, 其中包括任务队列、角色队列和智能体队列。通过发布订阅模式实现智 能体之间的通讯。消息的发布者为一个向消息队列发布消息的应用;消 息队列用于保存消息知道将消息发送给订阅者。在订阅者取走消息之前, 消息一直存在消息队列中;信道是建立在TCP连接内的虚拟连接,不管是发布消息、订阅队列还是接收消息,这些动作都是通过信道完成;消息 的订阅者为一个从消息队列中取得消息的应用。
多智能体(Agent)协调依赖于Agent能够显式地彼此通信, 当多个Agent在共享通信介质上同时通信时,这些系统可能变得不可靠, 引入角色的定义与设计,可以减少每个Agent负责的任务数量,在多智能 体协商阶段让更少的Agent做出响应,使得丢失的数据包更少,提高系统 的总体性能,即通过角色的设计减少虚拟干扰。
步骤S20,获取事件消息,并通过所述消息传递机制将所述 事件消息发送至任务容器。
多队列的集群系统通信接口从根任务实例出发,按照任务树 状关系,依次生成多个实例,并建立关系。从管理者角色出发,根据网 状图或者任务实例的分配需要依次生成多个Role实例,并建立Role实例之 间的关系。Role实例会根据自身的能力申请,或通过RoleContainer(任务 容器)发起任务分配,完成任务到角色的动态映射。
当环境中特定事件发生时,消息传递机制(多队列通信接口) 就会转发该事件给任务容器(TaskContainer)。
事件消息包括共享智能体系统环境信息,敌方目标属性,敌 对双方态势,己方下级角色对上级角色的报告、支援和请求信息,以及 己方上级角色对下级角色的命令、通知和指示信息;敌方目标属性包括 敌方性质、数量、位置和状态;敌对双方态势为依据敌对双方现场信息 对当前或未来环境的预测。
步骤S30,所述任务容器生成第一指令并发送至任务管理器; 所述第一指令为事件消息解析指令。
本发明一个优选的实施例中,任务管理器可以通过行为树建 立任务分解后的任务解析关系。
任务容器向任务管理器(TaskOrganization)申请对事件的 解析,并要求返回处理该事件的任务任务解析关系。
步骤S40,所述任务管理器基于所述第一指令进行所述事件 消息的解析,生成任务实例和第二指令,并按照任务解析关系建立所述 任务实例之间的关系,保存任务实例的ID;所述第二指令为任务实例执 行指令。
任务容器负责按照任务解析关系,生成响应的任务实例, (Task1,Task2),每个任务实例创建的时候就会执行OnStart操作,并 将自己的TaskID等信息传递给任务容器进行登记。
任务容器按照组成关系,建立任务实例之间的关系,包括通 知Task实例注册线管任务发送的特定消息。
步骤S50,所述任务管理器基于所述任务解析关系通过所述 消息传递机制将所述第二指令和任务实例之间的关系发送至相应的角色。
任务容器会通知角色容器,并完成任务到角色的映射。
步骤S60,角色对应的智能体在上一任务执行完毕后,执行 当前第二指令对应的任务实例,并生成任务完成消息,通过所述消息传 递机制将所述任务完成消息发送至所述任务管理器。
Agent完成任务就会执行分配的任务的doTask操作,完成 后就会发布任务完成的消息。
步骤S70,所述任务管理器基于所述任务完成消息和任务实 例的ID删除对应的任务实例,完成事件执行中的消息传递。
任务容器会接收该消息,删除响应的Task实例,此时Task 实例对象会调用onEnd操作,通知任务容器修正当前状态。其他需要处 理任务成功执行的有关任务模块,以及其他模块,会做出相应的操作。
步骤S40和步骤S50之间还包括角色动态创建和智能体动态 匹配:角色动态创建,在接收所述任务管理器生成并发送的第三指令后, 角色管理器进行角色实例的动态创建;所述第三指令为角色实例生成指 令;智能体动态分配,在接收所述角色管理器生成并发送的第四指令后, 智能体管理器进行智能体实例的动态匹配;所述第四指令为智能体匹配角色请求。
角色管理器进行角色实例的动态创建,其过程为:
在系统初始化之前,领域专家给出角色网状图,建立角色管 理器来表达角色之间的关系;在系统初始化时,创建角色容器 (RoleContainer)实例,动态管理Role实例的生成。
步骤S40A,若所述角色管理器中存在所述第三指令对应的 角色类型,则跳转步骤S40C;否则,跳转步骤S40B。
本发明一个实施例中,角色管理器可以通过有向图管理角色 之间的任务解析关系。
步骤S40B,所述角色管理器向角色管理器发送获取角色类 型请求,所述角色管理器基于所述任务解析关系中任务和角色之间的关 系生成角色类型并发送至所述角色管理器。
在事件触发生成Task任务时,任务容器生成Task实例,并 向角色容器发起创建角色实例的请求。
如果角色容器中不存在与任务匹配的角色实例类型,角色容 器向角色管理器发送一个获取角色类型的请求,角色管理器根据Task任 务和Role之间的关系向角色容器返回角色类型。
步骤S40C,所述角色管理器基于所述角色类型生成角色实 例和智能体匹配角色请求,并将所述智能体匹配角色请求发送至智能体 管理器。
如果角色容器中存在与任务匹配的角色实例类型,或已通过 角色管理器返回的角色类型,角色容器根据角色类型创建Role实例,并 将结果(成功/失败)返回确认。
Role实例创建成功之后,角色容器向智能体容器发起Agent 分配角色的请求。
通过分析Agent的调度状态,建立Agent的状态转移模型, Agent实例创建成功后,就可以等待调度机制进行调度,Agent依托分配 的Role对Task执行时,系统中每个Agent都有五个调度状态:Dead、 Wait、Ready、Active和Execute。
当RoleContainer发送一个Agent请求时,AgentContainer 内的Agent实例触发,Agent的调度状态由Wait变为Ready;如果 AgentContainer中未有与角色匹配的Agent,创建Agent实例,Agent的 调度状态由Dead变为Ready。此时Agent还要根据自身的状态决定是否 将调度状态转到Active,如果Agent本身处于可执行的状态即Agent与 Role匹配成功则Agent的调度状态在触发后由Ready变为Active,否则 等待角色匹配,Agent的调度状态一直处于Ready状态。处于Active调度 状态的Agent会等待调度,若被调度则转入Execute状态,否则等待调度。 转入Execute状态后,Agent去执行相应的任务,完成任务后将结果发送到多队列通信接口,Agent调度状态变为Wait等待新一轮的触发调度执 行。如果任务在执行过程中出现异常,任务未完成放弃执行,Agent调度 状态变为Dead。
Agent处于Active的调度状态时,需要等待系统进行调度, 此时并不是每个处于Active状态的Agent都会被调度,因为需要考虑任 务之间的相互关系,有些任务必须在一些任务之前完成,即如果Agent 处于可调度的Active状态,有的Agent也必须在一些Agent前调度。解 决方案是每个Agent都给定一个优先级,对AgentContainer中优先级较高 的优先运行。
智能体管理器进行智能体实例的动态匹配,其过程为:
系统初始化时,创建智能体容器(AgentContainer)实例, 动态管理Agent实例的生成。将角色Role0分配给Agent0实例,Agent0 是一个能承担管理角色的agent实例。所有Agent一开始的调度状态全部 为Wait状态,等待被触发。角色容器向智能体容器发送一个匹配角色的 请求,智能体容器中所有Agent调度状态调整为Ready。
步骤S40D,所述智能体管理器接收到所述第四指令后,将 所有wait状态的智能体的状态调整为ready。
在任务执行过程中,一部分智能体的状态不是wait,而可能 是execute状态,这时候不考虑execute状态的智能体,仅将wait状态的 智能体的状态调整为ready。
步骤40E,基于所述组成关系中角色和智能体之间的关系判 断所述智能体管理器中是否存在与角色匹配的智能体实例,若不存在, 则创建智能体实例并与角色匹配。
如果AgentContainer中存在与角色匹配的Agent实例,否则 创建一个Agent实例,将其Agent调度状态变为Ready。
步骤S40F,检测状态为ready的智能体是否为可执行智能体, 并检测结果为可执行智能体的状态调整为active。
与角色匹配成功后,检测自身Agent状态,如果在可执行状 态则调度状态变为Active状态,返回给AgentContainer检测结果。
步骤S40G,根据状态为active的智能体的运行前提和优先 级选择合适的智能体,并将其状态调整为execute;
Agent0根据各Agent的运行前提和优先级选择合适的Agent, 相应Agent的调度状态变为Execute。
处于Execute状态的Agent执行相应的任务。
Agent任务执行完成或任务未完成放弃执行,将运行结果发 送给Agent0,Agent0循环选择Agent,直到这批子任务都被执行完。
Agent执行完所有的子任务,将运行结果发送给多队列通信 接口。
如图2所示,本发明第二实施例的基于角色的多智能体任务 协同消息传递的异常处理方法,基于上述的基于角色的多智能体任务协 同消息传递方法,该异常处理方法包括:
步骤C10,若任务完成失败,所述任务实例生成任务失败消 息,并通过所述消息传递机制将所述任务失败消息发送至分层异常处理 器;
步骤C20,基于所述任务失败消息对应的任务的重要性、异 常处理复杂度和异常产生时间确定异常优先级;
步骤C30,按照异常优先级从高到低的顺序进行异常处理。
异常优先级定义方法为:
根据任务重要性判断异常优先的等级,若所述任务失败消息 对应的任务为与关系,则异常优先级为1;若所述任务失败消息对应的任 务为顺序关系,则异常优先级为2;若所述任务失败消息对应的任务为或 关系,则异常优先级为3;
若任务重要性相同,则根据异常处理复杂度判断异常优先的 等级,从异常处理复杂度低到高,异常优先级为3,4,…,n;
若任务重要性和异常处理复杂度均相同,则异常产生时间越 早的任务失败消息异常优先级更高;
其中,所述异常优先级1,2,3,4,…,n,代表异常优先级从高到 低。
上述过程可以理解为:
①执行“顺序关系”任务时抛出的异常优先级相同;
②执行“与关系”任务时抛出的异常优先级高于①;
③执行“或关系”任务时抛出的异常优先级低于①;
④当异常任务重要性相同时,需比较处理异常复杂度,复杂 度越低,优先级越高;
⑤异常优先级相同时,按异常抛出时间进行响应及处理。
本发明第三实施例的一种存储装置,其中存储有多条程序, 所述程序适于由处理器加载并执行以实现上述的基于角色的多智能体任 务协同消息传递方法以及基于角色的多智能体任务协同消息传递的异常 处理方法。
本发明第四实施例的一种处理装置,包括处理器、存储装置; 处理器,适于执行各条程序;存储装置,适于存储多条程序;所述程序 适于由处理器加载并执行以实现上述的基于角色的多智能体任务协同消 息传递方法以及基于角色的多智能体任务协同消息传递的异常处理方法。
所属技术领域的技术人员可以清楚地了解到,为描述的方便 和简洁,上述描述的存储装置、处理装置的具体工作过程及有关说明, 可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域技术人员应该能够意识到,结合本文中所公开的实施 例描述的各示例的模块、方法步骤,能够以电子硬件、计算机软件或者 二者的结合来实现,软件模块、方法步骤对应的程序可以置于随机存储 器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除 可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所 公知的任意其它形式的存储介质中。为了清楚地说明电子硬件和软件的 可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及 步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案 的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来 使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明 的范围。
术语“第一”、“第二”等是用于区别类似的对象,而不 是用于描述或表示特定的顺序或先后次序。
术语“包括”或者任何其它类似用语旨在涵盖非排他性的包 含,从而使得包括一系列要素的过程、方法、物品或者设备/装置不仅包 括那些要素,而且还包括没有明确列出的其它要素,或者还包括这些过 程、方法、物品或者设备/装置所固有的要素。
至此,已经结合附图所示的优选实施方式描述了本发明的技 术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然 不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域 技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换 之后的技术方案都将落入本发明的保护范围之内。
Claims (9)
1.一种基于角色的多智能体任务协同消息传递方法,应用于基于角色的多智能体任务协同系统,其特征在于,该消息传递方法包括:
步骤S10,基于智能体-角色-任务的多层关系构建消息传递机制;
步骤S20,获取事件消息,并通过所述消息传递机制将所述事件消息发送至任务容器;
步骤S30,所述任务容器生成第一指令并发送至任务管理器;所述第一指令为事件消息解析指令;
步骤S40,所述任务管理器基于所述第一指令进行所述事件消息的解析,生成任务实例和第二指令,并按照任务解析关系建立所述任务实例之间的关系,保存任务实例的ID;所述第二指令为任务实例执行指令;
步骤S50,所述任务管理器基于所述任务解析关系通过所述消息传递机制将所述第二指令和任务实例之间的关系发送至相应的角色;
步骤S60,角色对应的智能体在上一任务执行完毕后,执行当前第二指令对应的任务实例,并生成任务完成消息,通过所述消息传递机制将所述任务完成消息发送至所述任务管理器;
步骤S70,所述任务管理器基于所述任务完成消息和任务实例的ID删除对应的任务实例,完成事件执行中的消息传递;
步骤S40和步骤S50之间还包括角色动态创建,所述角色动态创建,在接收所述任务管理器生成并发送的第三指令后,角色管理器进行角色实例的动态创建;所述第三指令为角色实例生成指令;
所述角色管理器进行角色实例的动态创建,其过程为:
步骤S40A,若所述角色管理器中存在所述第三指令对应的角色类型,则跳转步骤S40C;否则,跳转步骤S40B;
步骤S40B,所述角色管理器向角色管理器发送获取角色类型请求,所述角色管理器基于所述任务解析关系中任务和角色之间的关系生成角色类型并发送至所述角色管理器;
步骤S40C,所述角色管理器基于所述角色类型生成角色实例和智能体匹配角色请求,并将所述智能体匹配角色请求发送至智能体管理器。
2.根据权利要求1所述的基于角色的多智能体任务协同消息传递方法,其特征在于,所述事件消息包括共享智能体系统环境信息,敌方目标属性,敌对双方态势,己方下级角色对上级角色的报告、支援和请求信息,以及己方上级角色对下级角色的命令、通知和指示信息;
所述敌方目标属性包括敌方性质、数量、位置和状态;
所述敌对双方态势为依据敌对双方现场信息对当前或未来环境的预测。
3.根据权利要求1或2所述的基于角色的多智能体任务协同消息传递方法,其特征在于,步骤S40和步骤S50之间还包括智能体动态匹配;
所述智能体动态分配,在接收所述角色管理器生成并发送的第四指令后,智能体管理器进行智能体实例的动态匹配;所述第四指令为智能体匹配角色请求。
4.根据权利要求3所述的基于角色的多智能体任务协同消息传递方法,其特征在于,所述智能体管理器进行智能体实例的动态匹配,其过程为:
步骤S40D,所述智能体管理器接收到所述第四指令后,将所有wait状态的智能体的状态调整为ready;
步骤40E,基于角色和智能体之间的关系判断所述智能体管理器中是否存在与角色匹配的智能体实例,若不存在,则创建智能体实例并与角色匹配。
5.一种基于角色的多智能体任务协同消息传递的异常处理方法,其特征在于,基于权利要求1-4任一项所述的基于角色的多智能体任务协同消息传递方法,该异常处理方法包括:
步骤C10,若任务完成失败,所述任务实例生成任务失败消息,并通过所述消息传递机制将所述任务失败消息发送至分层异常处理器;
步骤C20,基于所述任务失败消息对应的任务的重要性、异常处理复杂度和异常产生时间确定异常优先级;
步骤C30,按照异常优先级从高到低的顺序进行异常处理。
6.根据权利要求5所述的基于角色的多智能体任务协同消息传递的异常处理方法,其特征在于,所述异常优先级为:
根据任务重要性判断异常优先的等级,若所述任务失败消息对应的任务为与关系,则异常优先级为1;若所述任务失败消息对应的任务为顺序关系,则异常优先级为2;若所述任务失败消息对应的任务为或关系,则异常优先级为3;
若任务重要性相同,则根据异常处理复杂度判断异常优先的等级,从异常处理复杂度低到高,异常优先级为3,4,…,n;
若任务重要性和异常处理复杂度均相同,则异常产生时间越早的任务失败消息异常优先级更高;
其中,所述异常优先级1,2,3,4,…,n,代表异常优先级从高到低。
7.根据权利要求5所述的基于角色的多智能体任务协同消息传递的异常处理方法,其特征在于,所述分层异常处理器包括智能体层异常处理器、角色层异常处理器和任务层异常处理器;
所述分层异常处理器按照智能体层-角色层-任务层的顺序进行所述任务完成失败消息的异常处理。
8.一种存储装置,其中存储有多条程序,其特征在于,所述程序适于由处理器加载并执行以实现权利要求1-4任一项所述的基于角色的多智能体任务协同消息传递方法以及权利要求5-7任一项所述的基于角色的多智能体任务协同消息传递的异常处理方法。
9.一种处理装置,包括:
处理器,适于执行各条程序;
以及存储装置,适于存储多条程序;
其特征在于,所述程序适于由处理器加载并执行以实现:
权利要求1-4任一项所述的基于角色的多智能体任务协同消息传递方法以及权利要求5-7任一项所述的基于角色的多智能体任务协同消息传递的异常处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011409524.8A CN112379992B (zh) | 2020-12-04 | 2020-12-04 | 基于角色的多智能体任务协同消息传递及异常处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011409524.8A CN112379992B (zh) | 2020-12-04 | 2020-12-04 | 基于角色的多智能体任务协同消息传递及异常处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112379992A CN112379992A (zh) | 2021-02-19 |
CN112379992B true CN112379992B (zh) | 2024-01-30 |
Family
ID=74590542
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011409524.8A Active CN112379992B (zh) | 2020-12-04 | 2020-12-04 | 基于角色的多智能体任务协同消息传递及异常处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112379992B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113037857B (zh) * | 2021-03-23 | 2022-01-21 | 中国科学院自动化研究所 | 面向云环境的多机器人协同感知服务系统、方法及设备 |
CN113391556B (zh) * | 2021-08-12 | 2021-12-07 | 中国科学院自动化研究所 | 基于角色分配的群体分布式控制方法及装置 |
CN113726896B (zh) * | 2021-09-01 | 2022-09-27 | 看屋(上海)信息科技有限公司 | 基于商业智能房地产行业的任务分发系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004267632A (ja) * | 2003-03-11 | 2004-09-30 | Square Enix Co Ltd | ビデオゲーム装置、ビデオゲームの進行度チェック方法、並びにプログラム及び記録媒体 |
IL162265A0 (en) * | 2004-06-01 | 2005-11-20 | Usraek Aurcraft Ubdystrues Ktd | Flight debriefing system |
CN101410878A (zh) * | 2006-04-25 | 2009-04-15 | 国际商业机器公司 | 从永恒世界游戏内生成虚拟世界事件通知的方法 |
CN103902807A (zh) * | 2012-12-26 | 2014-07-02 | 迪士尼企业公司 | 完成虚拟空间内的角色或虚拟物品的修改的系统和方法 |
CN107463434A (zh) * | 2017-08-11 | 2017-12-12 | 恒丰银行股份有限公司 | 一种分布式任务处理方法与设备 |
CN108310771A (zh) * | 2018-01-16 | 2018-07-24 | 腾讯科技(深圳)有限公司 | 任务的执行方法和装置、存储介质、电子装置 |
CN110033665A (zh) * | 2019-04-17 | 2019-07-19 | 福建省电力有限公司泉州电力技能研究院 | 一种电力vr仿真培训的多人协同方法及装置 |
CN111080258A (zh) * | 2019-12-18 | 2020-04-28 | 中国人民解放军军事科学院国防科技创新研究院 | 一种基于角色状态机的群体无人系统协同任务管理子系统 |
CN111105155A (zh) * | 2019-12-18 | 2020-05-05 | 中国人民解放军军事科学院国防科技创新研究院 | 一种基于角色的群体无人系统协同任务管理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8200506B2 (en) * | 2006-12-19 | 2012-06-12 | Accenture Global Services Limited | Integrated health management platform |
-
2020
- 2020-12-04 CN CN202011409524.8A patent/CN112379992B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004267632A (ja) * | 2003-03-11 | 2004-09-30 | Square Enix Co Ltd | ビデオゲーム装置、ビデオゲームの進行度チェック方法、並びにプログラム及び記録媒体 |
IL162265A0 (en) * | 2004-06-01 | 2005-11-20 | Usraek Aurcraft Ubdystrues Ktd | Flight debriefing system |
CN101410878A (zh) * | 2006-04-25 | 2009-04-15 | 国际商业机器公司 | 从永恒世界游戏内生成虚拟世界事件通知的方法 |
CN103902807A (zh) * | 2012-12-26 | 2014-07-02 | 迪士尼企业公司 | 完成虚拟空间内的角色或虚拟物品的修改的系统和方法 |
CN107463434A (zh) * | 2017-08-11 | 2017-12-12 | 恒丰银行股份有限公司 | 一种分布式任务处理方法与设备 |
CN108310771A (zh) * | 2018-01-16 | 2018-07-24 | 腾讯科技(深圳)有限公司 | 任务的执行方法和装置、存储介质、电子装置 |
CN110033665A (zh) * | 2019-04-17 | 2019-07-19 | 福建省电力有限公司泉州电力技能研究院 | 一种电力vr仿真培训的多人协同方法及装置 |
CN111080258A (zh) * | 2019-12-18 | 2020-04-28 | 中国人民解放军军事科学院国防科技创新研究院 | 一种基于角色状态机的群体无人系统协同任务管理子系统 |
CN111105155A (zh) * | 2019-12-18 | 2020-05-05 | 中国人民解放军军事科学院国防科技创新研究院 | 一种基于角色的群体无人系统协同任务管理方法 |
Non-Patent Citations (5)
Title |
---|
The Cloud Task Attemper Layer Model Based on Agent Role;Wang Heng等;《2015 International Conference on Computational Intelligence and Communication Networks (CICN)》;全文 * |
基于Recognition-Primed Decision模型的多智能体作战仿真(英文);孟庆操;赵晓哲;姜伟;;系统仿真学报(第02期);全文 * |
基于面向对象思想的作战单位形式化描述方法;武利娟;《现代防御技术》;全文 * |
无人机自主协同任务管理;汤一峰;;航空电子技术(第01期);全文 * |
面向多智能体的人机协同航迹规划技术研究;贾凡;《中国优秀硕士研究生论文全文库》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112379992A (zh) | 2021-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112379992B (zh) | 基于角色的多智能体任务协同消息传递及异常处理方法 | |
US10915382B2 (en) | Event-driven serverless function orchestration | |
US20020062334A1 (en) | Dynamic agents for dynamic service provision | |
CN101923490B (zh) | 作业调度设备和作业调度方法 | |
CN106844018A (zh) | 一种任务处理方法、装置及系统 | |
US7805732B2 (en) | System and method for enabling cooperation of applications on a distributed network | |
US20120042327A1 (en) | Method and System for Event-Based Remote Procedure Call Implementation in a Distributed Computing System | |
CN108737560A (zh) | 云计算任务智能调度方法及系统、可读存储介质、终端 | |
JPH0660039A (ja) | ネットワークコンピュータ・システム処理グループ管理のための方法および装置 | |
Cameron et al. | Rule-based peer-to-peer framework for decentralised real-time service oriented architectures | |
Beraldi et al. | Power of random choices made efficient for fog computing | |
CN109968352A (zh) | 一种机器人控制方法及机器人、具有存储功能的装置 | |
CN111177160B (zh) | 服务更新方法、装置、服务器及介质 | |
US20200310828A1 (en) | Method, function manager and arrangement for handling function calls | |
US8972997B2 (en) | Work item processing in distributed applications | |
CN113377503A (zh) | 一种协作式ai的任务调度方法、装置与系统 | |
CA2631255A1 (en) | Scalable scheduling of tasks in heterogeneous systems | |
Ghorbian et al. | A survey on the scheduling mechanisms in serverless computing: a taxonomy, challenges, and trends | |
Anke et al. | A service-oriented middleware for integration and management of heterogeneous smart items environments | |
Chen et al. | Dynamic-agents for dynamic service provisioning | |
Barkhordarian et al. | Migratability of BPMN 2.0 process instances | |
Pacher et al. | Implementation and evaluation of a self‐organizing artificial hormone system to assign time‐dependent tasks | |
Dantas et al. | Green LAC: Resource-Aware Dynamic Load Balancer for Serverless Edge Computing Platforms. | |
EP2715555B1 (en) | Managing and simplifying distributed applications | |
Filgueiras et al. | Providing real-time scheduling for mobile agents in the jade platform |
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 |