异构多智能体的协同控制方法和装置
文献发布时间:2023-06-19 11:02:01
技术领域
本发明属于计算机技术领域,尤其涉及一种异构多智能体的协同控制方法。
背景技术
随着新一代信息技术、人工智能技术的发展及应用,智能体,如机器人技术得益于新技术的发展其应用领域更为广泛,特别是一些重复性劳作、危险、或人类无法进入的特殊场合。
就目前智能体技术水平而言,单智能体在环境信息感知获取、实时处理及控制能力等方面是有限的,尤其是面对复杂的任务和非结构化环境,其所表现的能力明显不足,多智能体即可解决上述问题。多智能体系统是计算机科学中的一个比较新的分支,其与人工智能、分布式/并发控制系统等存在密布可分的内在联系,是一门综合交叉的研究学科。针对工业化进程中面临的任务、控制系统复杂化的问题,可以利用多智能体系统理论来解决相应的问题。多智能体在表达实际系统时,通过各智能体间的通讯、合作、协调、调度、管理及控制来表达系统的结构、功能和行为特性。多智能体系统具有自主性,分布性、协调性,并具有自组织能力、学习能力和推理能力。采用多智能体系统解决实际应用问题,具有很强的鲁棒性和可靠性,并具有较高的问题求解效率。然而在实际应用中,多智能体是异构的,即多智能体之间的系统动态甚至是状态空间维度是不同的。比如无人飞行器和地面无人系统,其有效载荷携带能力,任务配置能力以及控制和数据采集功能均不相同。即,多智能体系统在功能、结构和应对复杂、未知危险环境和任务时明显优于单智能体,但同时由于其异构性、复杂性、动态性、耦合性、时变性等因素的增加也给设计和分析带来了一些问题,因此多智能体的相互协调协作显得尤为重要。
发明内容
本发明的技术解决问题是:克服现有技术的不足之处,提出了一种异构多智能体的协同控制方法,其可以提高多智能体系统的收敛速率,减少多智能体系统的消耗。
本发明的技术解决方案是:
第一方面,本发明提供了一种异构多智能体的协同控制方法,包括:
针对多个智能体中的各智能体,确定所述各智能体的感知区域以及所述各智能体在所述感知区域的邻域智能体;
基于所述各智能体的在所述感知区域的邻域智能体的邻域信息,从所述各智能体的感知区域中选取符合邻域信息选择策略的邻域智能体,作为所述各智能体在感知区域的关键智能体;
基于所述各智能体在所述感知区域的关键智能体,对所述各智能体进行状态演化。
优选的是,所述的异构多智能体的协同控制方法中,所述基于所述各智能体的在所述感知区域的邻域智能体的邻域信息,从所述各智能体的感知区域中选取符合邻域信息选择策略的邻域智能体,作为所述各智能体在感知区域的关键智能体,包括:
以所述各智能体为中心,将所述各智能体的感知区域划分成多个感知子区域;确定所述各智能体在所述各感知子区域的邻域智能体;
从所述各智能体的各感知子区域中选取与所述各智能体之间的距离符合设定规则的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体;
所述基于所述各智能体在所述感知区域的关键智能体,对所述各智能体进行状态演化,包括:
基于所述各智能体在所述多个感知子区域的关键智能体,对所述各智能体进行状态演化。
优选的是,所述的异构多智能体的协同控制方法中,所述各智能体的感知区域为以所述各智能体为圆心的圆形区域;
所述以所述各智能体为中心,将所述各智能体的感知区域划分成多个感知子区域,包括:
以所述各智能体为中心,将所述各智能体的感知区域均匀划分成多个扇形的感知子区域。
优选的是,所述的异构多智能体的协同控制方法中,所述以所述各智能体为中心,将所述各智能体的感知区域划分成多个感知子区域,包括:
根据所述各智能体在所述感知区域的邻域智能体的分布密集情况,将所述各智能体的感知区域划分成多个感知子区域。
优选的是,所述的异构多智能体的协同控制方法中,所述从所述各智能体的各感知子区域中选取与所述各智能体之间的距离符合设定规则的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体,包括:
从所述各智能体的各感知子区域中选取与所述各智能体之间的距离最远的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体。
优选的是,所述的异构多智能体的协同控制方法中,所述基于所述各智能体在所述多个感知子区域的关键智能体,对所述各智能体进行状态演化,包括:
基于所述各智能体在所述多个感知子区域的关键智能体,根据一致性协议,对所述各智能体进行状态演化,所述一致性协议采用以下公式表示:
其中,x
优选的是,所述的异构多智能体的协同控制方法中,所述智能体用于模拟无人飞行器。
第二方面,本发明提供了一种异构多智能体的协同控制装置,包括:
确定模块,用于针对多个智能体中的各智能体,确定所述各智能体的感知区域以及所述各智能体在所述感知区域的邻域智能体;
选取模块,用于基于所述各智能体的在所述感知区域的邻域智能体的邻域信息,从所述各智能体的感知区域中选取符合邻域信息选择策略的邻域智能体,作为所述各智能体在感知区域的关键智能体;
状态演化模块,用于基于所述各智能体在所述感知区域的关键智能体,对所述各智能体进行状态演化。
优选的是,所述的异构多智能体的协同控制装置中,所述选取模块,具体包括:
划分子模块,用于以所述各智能体为中心,将所述各智能体的感知区域划分成多个感知子区域;
确定子模块,用于确定所述各智能体在所述各感知子区域的邻域智能体;
选取子模块,用于从所述各智能体的各感知子区域中选取与所述各智能体之间的距离符合设定规则的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体;
所述状态演化模块具体用于基于所述各智能体在所述多个感知子区域的关键智能体,对所述各智能体进行状态演化。
优选的是,所述的异构多智能体的协同控制装置中,所述选取子模块,具体用于从所述各智能体的各感知子区域中选取与所述各智能体之间的距离最远的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体。
本发明相对于现有技术的有益效果:本发明实施例提供了一种异构多智能体的协同控制方法和装置,首先针对多个智能体中的各智能体,确定所述各智能体的感知区域以及所述各智能体在所述感知区域的邻域智能体,之后基于所述各智能体的在所述感知区域的邻域智能体的邻域信息,从所述各智能体的感知区域中选取符合邻域信息选择策略的邻域智能体,作为所述各智能体在感知区域的关键智能体,最后基于所述各智能体在所述感知区域的关键智能体,对所述各智能体进行状态演化。基于该方法和装置,可以基于多智能体系统中各智能体的邻域信息选取关键智能体进行通信交流,从而提高多智能体系统的收敛速率,或者在保证相同的收敛速率的同时减少多智能体系统的损耗。
附图说明
图1为本发明实施例所提供的异构多智能体的协同控制方法的流程图;
图2为本发明实施例所提供的多个智能体中任一智能体的感知区域的示意图;
图3为本发明实施例所提供的异构多智能体的协同控制装置的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面对结合附图对本发明的具体实施方式做详细的说明。
多智能体系统包括多个智能体,主要通过分布式控制多个智能体进行协同合作来完成复杂的任务。在实际应用中,多个智能体之间协同合作的复杂性与多智能体的网络拓扑结构有着密切关系。多智能体系统的网络拓扑结构时常发生变换,形成这种拓扑变换的原因是智能体的位置变换和智能体间的通信连接与断开。多智能体系统中多智能体之间的收敛性与多智能体之间的网络拓扑的连通性存在密切联系,但智能体间更多的联系并不总能促进整个系统更快收敛。基于此,本发明实施例提出了一种异构多智能体的协同控制方法,不再基于多智能体系统中的全部其他智能体来对某一智能体进行状态演化,而是基于各智能体的邻域信息选取关键智能体,基于关键智能体对各智能体进行状态演化,最终提高多智能体系统的收敛速率,或者在保证相同的收敛速率的同时减少多智能体系统的损耗。另外,对于实时性要求高的场景,就更须注重通讯延迟及计算能力。而本发明实施例所提出的异构多智能体的协同控制方法,相较于传统所有邻域智能体都参与状态演化的方法,可以极大地提升计算效率,因此更加可以满足实时性要求高的场景的需求。
分布式协同决策的一个关键部分是在多个智能体之间达成一致。而一致性决定智能体之间的信息交换的规则集或协议,用来保证智能体能够在感兴趣的参数上收敛。因此,应该理解的是,本发明实施例所提出的异构多智能体的协同控制方法实质上提供了一种基于邻域信息选择策略的异构多智能体一致性协议,基于该一致性协议,可以提高多智能体系统的收敛速率,改善系统性能。
图1示出了本发明实施例提供的一种异构多智能体的协同控制方法。如图所示,该方法包括:
步骤110,针对多个智能体中的各智能体,确定所述各智能体的感知区域以及所述各智能体在所述感知区域的邻域智能体。
具体地,任一智能体的感知区域可以根据该智能体的通信能力或智能体的初始分布情况确定。也可以先确定智能体的感知半径,然后根据感知半径即可以确定出一个以智能体为中心的感知区域。智能体可以与位于其感知区域内的全部邻域智能体进行通信,因此,又可以将智能体的感知区域称为通信区域。
步骤120,基于所述各智能体的在所述感知区域的邻域智能体的邻域信息,从所述各智能体的感知区域中选取符合邻域信息选择策略的邻域智能体,作为所述各智能体在感知区域的关键智能体。
具体地,任一智能体的在所述感知区域的邻域智能体的邻域信息包括在其感知区域内的邻域智能体的分布情况,邻域智能体的具体位置,邻域智能体与该智能体之间的距离,邻域智能体与该智能体之间的位置夹角。这里,为了实现邻域智能体与该智能体之间的位置夹角的计算,可以预先在感知区域内规定一个0度位置,即位于该0度位置的邻域智能体与该智能体之间的位置夹角为0,而其他邻域智能体与该智能体之间的连线与上述0度位置所共同构成的夹角可以理解为其他邻域智能体与该智能体之间的位置夹角。
在一些实施例中,基于所述各智能体的在所述感知区域的邻域智能体的邻域信息,从所述各智能体的感知区域中选取符合邻域信息选择策略的邻域智能体,作为所述各智能体在感知区域的关键智能体,包括:
步骤S1,以所述各智能体为中心,将所述各智能体的感知区域划分成多个感知子区域;确定所述各智能体在所述各感知子区域的邻域智能体。
在一些示例中,所述各智能体的感知区域为以所述各智能体为圆心的圆形区域;所述以所述各智能体为中心,将所述各智能体的感知区域划分成多个感知子区域,包括:以所述各智能体为中心,将所述各智能体的感知区域均匀划分成多个扇形的感知子区域。
具体地,可以根据所述各智能体在所述感知区域的邻域智能体的分布密集情况,将所述各智能体的感知区域划分成多个感知子区域。例如,当任一智能体在感知区域的邻域智能体的分布密度较高时,感知子区域的个数更大;反之,感知子区域的个数则更少。
步骤S2,从所述各智能体的各感知子区域中选取与所述各智能体之间的距离符合设定规则的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体。
在一些实施例中,所述从所述各智能体的各感知子区域中选取与所述各智能体之间的距离符合设定规则的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体,包括:从所述各智能体的各感知子区域中选取与所述各智能体之间的距离最远的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体。
步骤130,基于所述各智能体在所述感知区域的关键智能体,对所述各智能体进行状态演化。
在一些实施例中,所述基于所述各智能体在所述感知区域的关键智能体,对所述各智能体进行状态演化,包括:基于所述各智能体在所述多个感知子区域的关键智能体,对所述各智能体进行状态演化。
具体地,基于所述各智能体在所述多个感知子区域的关键智能体,根据一致性协议,对所述各智能体进行状态演化,所述一致性协议采用以下公式表示:
其中,x
在一些实施例中,所述智能体用于模拟无人飞行器。即,多个智能体可以模拟无人飞行器编队。将本发明实施例所提供的方法运用在无人飞行器的编队控制时,可以提高无人飞行器系统的计算能力,使系统收敛速度更快。
应该理解的是,对于多智能体中的全部智能体,均通过步骤110至步骤130确定各智能体在感知区域的关键智能体,之后对全部智能体进行状态信息的更新,实现全部智能体的状态演化。
综上所述,本发明实施例提供了一种异构多智能体的协同控制方法,首先针对多个智能体中的各智能体,确定所述各智能体的感知区域以及所述各智能体在所述感知区域的邻域智能体,之后基于所述各智能体的在所述感知区域的邻域智能体的邻域信息,从所述各智能体的感知区域中选取符合邻域信息选择策略的邻域智能体,作为所述各智能体在感知区域的关键智能体,最后基于所述各智能体在所述感知区域的关键智能体,对所述各智能体进行状态演化。基于该方法,可以基于多智能体系统中各智能体的邻域信息选取关键智能体进行通信交流,从而提高多智能体系统的收敛速率,或者在保证相同的收敛速率的同时减少多智能体系统的损耗。
以下提供一个具体的实施场景,对本发明实施例所提出的异构多智能体的协同控制方法进行说明。
如图2所示,智能体i以感知半径r扫描所有邻域智能体,计算每个邻域智能体相对于智能体i的距离和位置夹角,然后将整个感知区域均匀地划分出N个θ角度范围,每个θ角度范围对应于每个感知子区域,在每个θ角度范围内选取距离最远的白色邻域智能体参与状态演化。
具体包括以下步骤:
在k时刻,智能体i扫描感知到半径r内所有邻域智能体A
在k时刻,智能体i主动选取智能体i
在k时刻,智能体i遍历所有角度范围,筛选出各个角度范围内距离最远的邻域智能体组成候选集。
在k时刻,智能体i参考候选集中的邻域成员进行状态信息的更新。具体地,智能体i的通信区域C(上述感知半径r扫描区域,也可称为感知区域)均匀划分出N个角度范围,每个角度范围依次用1,2,···,N标记,则角度范围的集合表示为C
θ
其中,A
综上,基于邻域信息选择策略的多智能体一致性表示为:
其中,x
智能体i有邻域智能体i
图3为本发明实施例所提供的异构多智能体的协同控制装置的结构示意图。如图3所示,该装置300包括:确定模块310,用于针对多个智能体中的各智能体,确定所述各智能体的感知区域以及所述各智能体在所述感知区域的邻域智能体;选取模块320,用于基于所述各智能体的在所述感知区域的邻域智能体的邻域信息,从所述各智能体的感知区域中选取符合邻域信息选择策略的邻域智能体,作为所述各智能体在感知区域的关键智能体;状态演化模块330,用于基于所述各智能体在所述感知区域的关键智能体,对所述各智能体进行状态演化。
在一些实施例中,所述选取模块,具体包括:划分子模块,用于以所述各智能体为中心,将所述各智能体的感知区域划分成多个感知子区域;确定子模块,用于确定所述各智能体在所述各感知子区域的邻域智能体;选取子模块,用于从所述各智能体的各感知子区域中选取与所述各智能体之间的距离符合设定规则的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体;所述状态演化模块具体用于基于所述各智能体在所述多个感知子区域的关键智能体,对所述各智能体进行状态演化。
在一些实施例中,所述选取子模块,具体用于从所述各智能体的各感知子区域中选取与所述各智能体之间的距离最远的邻域智能体,作为所述各智能体在各感知子区域中的关键智能体。
本发明虽然以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以做出可能的变动和修改,因此,本发明的保护范围应当以本发明权利要求所界定的范围为准。
- 异构多智能体的协同控制方法和装置
- 一种基于同构化-跟踪的多舰载异构体舰面协同轨迹规划与控制方法