多Agent分级动态联盟合作机制
2017-04-25孙家民史天予王旭辉
孙家民+史天予+王旭辉
摘要:Agent是具有一系列能力的智能体,但对于复杂问题的解决单个Agent仍表现出对问题解决的能力不足,因此多Agent系统中的多个Agent的协同合作成为解决问题的关键。本文提出了一种多Agent分级动态结盟合作模型,在黑板通信体系的基础上,根据状态动态选择主Agent,由它完成对目标任务的分解,并根据个Agent的状态能力信息实现本阶段的联盟成员的确定,在分解任务的基础上确定顺序执行解决或并行解决的最佳方案,最终实现在任务完成的各阶段始终保持的最有力的合作协调能力,使任务的解决更加的有效。文中给出了实现合作的过程和动态联盟的形成方式。
关键词:多Agent系统;协同合作;动态结盟;任务分解
中图分类号:TP393.06 文献标识码:A 文章编号:1007-9416(2017)01-0112-01
1 多Agent系统
1.1 多Agent系统概念
多Agent系统由一组在逻辑或物理位置上有规律或随机分布的多个Agent组成,他们通过有效的通信系统进行资源共享,为完成共同的任务目标而成为一个有组织的群体。
1.2 组织结构
通常一个集中式或分布式的多个Agent便可组成一个简单的Agent系统。而此种小型的多Agent系统也可以继续采用集中或分布式再组成组织更大规模的Agent系统。根据组织结构可分为完全集中式、完全分布式、混合式三类。
结合几种结构的优缺点,在集中式的结构中让每一个Agent都具备管理Agent的能力,状态能力最合适的成为管理Agent,而一旦该Agent出现崩溃或能力状态出现状况,其他有能力的可以接替其成为管理Agent,这即集成了集中保持内部信息的一致性,对系统的管理、控制较为容易的优点,又解决了其单一溃败的致命缺点,较为适合我们所描述的动态联盟的机制。如图1所示。
1.3 合作策略
多Agent系统中多个Agent的合作可使系统总体性能得到提高,而合作带来的不只有性能的提升,更多时候还伴随着对任务解决的冲突、矛盾从而导致几个Agent分任务甚至整个任务的失败,因此为解决冲突,行为选择时,各Agent需要获取其他Agent的行为以避免矛盾的发生,而这些加大了通信量和时间的大量消耗,在此基础上根据所有联合行为对整体利益贡献的好坏,选择出自己的最优行为,但这也具有着很大的不确定性难以避免冲突的发生。所以通过信息共享动态生成的主Agent来完成对任务的分解、规划、分配能简单实现多个Agent的合作,有效的避免冲突的发生,又可以减少通信的损耗。
2 仿真实验与结果分析
仿真实验与结果分析我们选择的仿真环境为Visual C++6.0,图2所示是传感器与目标的初始化状态,图3是在动态联盟下主控Agent通过Agent间协作获取的多个角度的图像信息。
3 结语
动态联盟合作机制采用集中式的动态管理Agent,简化了由多Agent冲突协商带来的复杂性,又消除了固定管理Agent带来的单一崩溃即全盘皆崩溃的致命缺点,避免了浪费不必要的资源,简化了Agent间冲突的协调,在任务完成的过程中根據变化进行管理Agent与联盟的重新确定,保持对任务完成的最佳状态。本文提出的动态联盟合作机制为多Agent合作问题求解提供了合理的实现方法。
参考文献
[1]马巧云.基于度Agent系统的动态任务分配研究[D].武汉:华中科技大学,2006.
[2]杨斯博.基于自组织多Agent系统的智能控制与决策研究[D].天津:天津大学,2010.
[3]肖正,吴承荣,张世永.多Agent系统合作与协调机制研究综述[J].计算机科学,2007,05:139-143.