技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种多智能体协同任务分配策略及其实施方法及系统  >  正文

一种多智能体协同任务分配策略及其实施方法及系统

  • 国知局
  • 2024-07-31 22:44:23

本发明涉及任务分配,具体为一种多智能体协同任务分配策略及其实施方法及系统。

背景技术:

1、在复杂环境中,某些任务可能过于庞大,单个智能体难以有效地完成所有任务,需要采取多智能体系统,通过将任务分解为子任务,并分配给多个智能体;多智能体任务分配可以利用并行处理的优势,不同的智能体可以同时处理不同的子任务,最大程度地发挥各自的优势,提高整个系统的性能。

2、现有技术中的,公开号cn111489049a公开了一种方法:对多智能体系统进行建模,通过计算智能体对每个未完成任务的出价值,选取出价值最高的任务,并设为任务经理,如果任务经理能够独自完成任务,则完成任务并广播消息;若任务经理不能独自完成任务,则将所述任务标记为待组织任务,并广播信息给其他智能体,接收到任务信息的智能体根据自身状态做出响应,确认参与待组织任务的智能体发送确认消息给任务经理,如果所有确认参与的智能体能够完成任务,则广播任务执行方案已确定的消息,否则,重新进行任务分配,当任务完成后,智能体修改自身状态并广播任务完成的消息。

3、上述方法的主要问题是:在系统中只选取出价值最高的智能体作为任务经理,任务经理将所有未完成任务广播其他智能体,给任务经理的负载过重,如果任务经理出现故障,可能会导致整个系统停滞。当确认参与的智能体被确定时,就会广播任务方案,然而这个方案是由局部信息决定的,没有进行全局优化考量,可能会导致资源利用不足或执行效率低下。

4、在所述背景技术部分公开的上述信息仅用于加强对本公开的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。

技术实现思路

1、本发明的目的在于提供一种多智能体协同任务分配策略及其实施方法及系统,以解决上述背景技术中提出的问题。

2、为实现上述目的,本发明提供如下技术方案:

3、一种多智能体协同任务分配策略及其实施方法,具体步骤包括:

4、步骤1:将多智能体任务分解成若干子任务,每个子任务可以被智能体独立执行完成,所有子任务执行完成后,所述多智能体任务执行完成;

5、步骤2:对多智能体系统中的每个智能体进行能力评估,综合各项评估指标,生成每个智能体的效率指数,作为智能体在任务分配和系统优化中的权重参考;

6、步骤3:设计完成不同子任务需要的智能体功能,根据系统需求目标,确定完成子任务需要的智能体模块,在确定功能模块的基础上,生成智能体的行为策略;

7、步骤4:使用匈牙利算法,在多智能体系统中将各个子任务分配给最适合执行它们的智能体,通过寻找最佳的子任务-智能体匹配方案来最大化系统的效率和性能,在这个过程中,每个智能体都被赋予一个子任务,每个子任务都被分配给一个智能体;

8、步骤5:建立智能体之间的通信机制,使其能根据接收到的信息和系统目标做出合适的决策,对系统进行动态调整;

9、步骤6:在任务执行的最后阶段,将每个执行完子任务的智能体集成在一起,整合所有智能体的输出,生成最终的处理结果。

10、进一步地,多智能体任务分解的若干子任务具体为:

11、输入预处理任务:对输入数据进行预处理,根据具体的数据类型,进行去噪、标准化、归一化操作;特征提取任务:提取原始数据中的特征;子模型训练任务:对每个子模型进行训练以提高处理速度;子模型整合任务:将训练后完成的子模型进行集成;输出处理任务:对输出结果的解码整合。

12、进一步地,对每个智能体进行能力评估,生成效率指数所依据的原理为:

13、;

14、;

15、其中,表示资源利用率,表示资源的实际使用量,表示资源总量,表示第个智能体的效率指数,表示完成的任务量,表示总任务量,表示资源的最大可用量,表示智能体的鲁棒性因子,用于衡量智能体的容错能力。

16、进一步地,设计完成不同子任务需要的智能体功能所依据的原理为:

17、根据不同的子任务,为每个子任务设定与之任务匹配的智能体模块,具体包括:

18、输入预处理任务:输入数据包含噪声、错误或无效信息,输入预处理模块对信息进行清晰和过滤,剔除异常值、噪声和不完整的数据;

19、特征提取任务:通过特征提取模块从原始数据中提取与协同任务相关的数据信息,具体包括数据的结构性信息、频域信息、时域信息;

20、子模型训练任务:训练智能体模型之前,需要大量数据开始训练,子模型训练模块负责收集和预处理数据,以确保数据的质量和适用性,训练过程中,子模型训练模块对模型性能进行评估,并根据评估结果对模型进行优化;

21、子模型整合任务:不同的子模块从不同的角度或数据源获取数据,并产生对应的输出,子模型整合模块将多源数据进行整合,产生系统整体的综合视图,并基于整合后的多源数据进行决策,对各个子模块提供反馈;

22、输出处理任务:输出处理模块接受来自子模型整合模块的系统决策,将其转化为可执行的操作,在智能体之间进行通信和交互。

23、进一步地,使用匈牙利算法进行任务分配所依据的原理为:

24、匈牙利算法的决策变量为:

25、;

26、其中,表示第个智能体,表示第项任务,表示决策变量,当时,表示指派第个智能体执行第项任务,当时,表示不指派第个智能体执行第项任务;

27、匈牙利算法的约束条件为:

28、;

29、其中,表示决策变量,①式表示每个任务只能有一个智能体执行,②式表示每个智能体只能执行一个任务;

30、匈牙利算法需要满足的目标函数为:

31、;

32、其中,表示第个智能体执行第项任务的效率,表示决策变量,表示匈牙利算法的效率最高时完成任务需要的最小成本;

33、匈牙利算法的具体步骤为:对于一个有个智能体,项子任务的系统, 生成每项智能体完成子任务所需时间的系数矩阵,生成系数矩阵所依据的公式为:

34、;

35、其中,表示系数矩阵,表示第个智能体执行第项任务的效率;

36、①将系数矩阵在每行列上减去对应行列中的最小值,使各行各列都出现0元素;

37、②找到只有一个0元素的行,标记所述0元素,同时划去该列其他0元素;找到只有一个0元素的列,标记所述0元素,同时划去该行其他0元素;

38、③若存在未标记的0元素,并且找不到独立0元素的行列,从剩余0元素最少的行列开始,比较行中0元素在对应列中0元素的数目,标记0元素最少的那一列的0元素,同时划去该行该列其他0元素;

39、重复②和③,直到找到n个位于不同行不同列的0元素,此时0元素对应的行列即为智能体执行子任务效率最高的最优解,按照行列对应的智能体和子任务进行任务分配,此时分配的结果即为全局考量之下的分配策略。

40、进一步地,建立智能体之间的通信机制所依据的原理为:

41、基于kqml构建一种通信框架,分为内容层、消息层、通信层;

42、其中,内容层使用子模块本身的表达语言来传送消息的实际内容;

43、通信层负责对消息的特性进行编码,特性具体描述了发送模块和接收模块的标识符;

44、消息层完成将一条消息从一个子模块传输给另一个子模块时,对所传输消息的封装,识别传输消息发送时所使用的协议,并给消息发送模块提供一个附加在消息内容上的述行语用以实现对消息的分析和正确传输。

45、本发明另外还提供一种多智能体协同任务分配系统,所述系统用于实现上述的多智能体协同任务分配策略及其实施方法,包括:

46、任务分解模块:将多智能体任务分解成若干子任务,每个子任务可以被智能体独立执行完成,所有子任务执行完成后,所述多智能体任务执行完成;

47、能力评估模块:对多智能体系统中的每个智能体进行能力评估,综合各项评估指标,生成每个智能体的效率指数,作为智能体在任务分配和系统优化中的权重参考;

48、功能设计模块:设计完成不同子任务需要的智能体功能,根据系统需求目标,确定完成子任务需要的智能体模块,在确定功能模块的基础上,生成智能体的行为策略;

49、任务分配模块:使用匈牙利算法,在多智能体系统中将各个子任务分配给最适合执行它们的智能体,通过寻找最佳的子任务-智能体匹配方案来最大化系统的效率和性能,在这个过程中,每个智能体都被赋予一个子任务,每个子任务都被分配给一个智能体;

50、通信模块:建立智能体之间的通信机制,使其能根据接收到的信息和系统目标做出合适的决策,对系统进行动态调整;

51、整合模块:在任务执行的最后阶段,将每个执行完子任务的智能体集成在一起,整合所有智能体的输出,生成最终的处理结果。

52、与现有技术相比,本发明的有益效果是:

53、本发明将多智能体任务分解成多个子任务,将每个子任务一一分配智能体模块,根据独立智能体的效率指数,使用匈牙利算法依次为每个子任务分配智能体效率匹配度最高的智能体模块;本发明还通过kqml构建通信框架,在智能体模块之间传输信息,保持系统的动态平衡。本发明同时考虑到所有的智能体,每个智能体的时间复杂度相同,避免某个智能体负载过重导致系统故障,并且在任务匹配时遍历所有子任务和智能体模块,避免了资源浪费或者过剩的情况。

本文地址:https://www.jishuxx.com/zhuanli/20240730/194392.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。