王昊 刘涛 孙思远
摘 要:基于Agent建模思想来源于在建立和分析人类社会中交互模型和理论方面,MAS可以扮演重要的角色。本文首先探讨了基于Agent建模的思想,其次从建模仿真平台Swarm入手,从Swarm的设计思想、建模方法和体系结构方面对Agent建模方法进行系统分析。
关键词:Agent;Swarm平台;体系结构
1 基于Agent建模的思想
Agent能够模拟人类的行为,具有智能型、社会性、适应性等人类特性。随着信息基础设施的建立和完善,人们对应用的要求越来越高。高智能、网络化、高可靠性和快速适应能力成为系统所追求的目标[1]。而这一目标正好和Agent的特点相吻合。从而加速了Agent的应用研究。
人们将Agent作为系统基本的抽象单位,然后赋予Agent一定的功能,然后将多个Agent设置具体的交互模式,从而得到相应的应用系统模型[2]。首先,Agent是一个自治的计算机实体,它可以通过感应器来感知环境,并通过效应器作用于环境。其次,智能。Agent具有智能,并不是指它是全知全能的,而是说Agent在变化的过程中灵活且理性的工作,具有感知和作用的能力。最后,交互。交互是指Agent可以被其他为追求自己子目标而执行相应任务的Agent所影响。
2 Swarm的设计思想
组成Swarm的程序大部分是用ObjectiveC语言编写的类库,因此用户可以在自己的仿真程序中应用、扩展这些类库。目前在复杂系统研究领域中,被广泛推荐和采用的是基于SantaFe研究所研制的Swarm平台的Agent建模和开发工具。这不仅因为Swarm是一个免费工具,更因为Swarm具有很好的适应性,可以得到平台研发人员和使用人员的不断改进。Swarm的目的是为复杂性的研究人员提供一个标准的、可靠软件工具集,并且提供了用于多Agent系统设计、实现、运行和分析的工具,用于那些具有分布仿真体系结构特征的各种复杂系统的仿真试验。
3 Swarm的建模方法
Swarm的建模思想是把一个个体封装起来。一个“Swarm”代表一个个体的集合和他们的行为时间表。Swarm中的模块化和组件思想允许建立一个灵活的模型系统。Swarm可以嵌套,可以直接表示多层模型,而且它们可以被个体用作自身环境的模型。多层次的建模方法可以提供强大的表达能力。Swarm允许用户完整地建立和测试多层模型。Swarm可以明确地表达一个自然的结构,即把一组个体紧密地联系起来,就像一个单独的个体。由于Swarm可以在仿真运行的过程中建立和释放,所以它可以用来建立描述多层次动态出现的模型。
Swarm平台就是基于Agent的建模工具,其建模方法是从底向上,先构建每个实体Agent,再将这些Agent组装起来形成整个系统的模型。在Swarm平台上,Swarm是基本构件,一个Swarm就是一个Agent,这时Agent通过规划技术来安排自己的行为;也可以认为一个Swarm是某个组织,由多个Agent居于其中,这时Swarm可用规划技术来对这些Agent的行为进行规划。
4 Swarm的体系结构和仿真结构
Swarm仿真的基本单位是个体。每一个个体就像系统中的一个演员,他们可以产生动作并影响自身和其他个体。仿真包括几组交互的个体。个体定义了Swarm系统中的基本对象。一个时间表规定了这些对象独立事件发生的流程。在Swarm中特定的行为发生在特定的时间,行为的发展按照时间表的规定进行。时间表是一个数据结构,其中包括各事件的执行顺序。
除了作为个体的容器外,Swarm自身也可以是个体。一个典型的个体是一个包括一系列规则、反应和刺激的模型。但是一个个体自身也可以作为一个Swarm,即一个对象的集合和动作的时间表。在这种情况下,一个个体的行为可以由它的Swarm中个体表现的现象来定义。
如果仅有一个运行的模型是没有什么用处的,系统还必须能观察模型的活动。在Swarm中,这时通過观察器(Observer)来实现的。观察器是一个特殊的对象,可以通过探测器接口观察其他个体,并建立一个时序图来跟踪其动态变化。观察期个体也是一个Swarm,包括一个个体和一个行为时间表。通过将一个Swarm和作为观察器的子Swarm合并起来,一个单纯的,只包含自身。也就是说,一个Swarm仿真程序中包括一个Swarm Model构件和一个Observer Swarm构件。Swarm Model就是系统模型,包含有所有Agent和作为容器的子Swarm,并对其进行实例化。Observer Swarm包括Swarm Model,并为Swarm Model 的动作提供了空间和时间环境,同时根据要求对模型进行可视化操作(GUI接口)。
模型运行时,Swarm作为一个虚拟机,Swarm的内核执行模型和GUI时间,操作系统与Swarm内核进行互换,而计算机的CPU执行来自操作系统的程序指令,如图1所示。
[参考文献]
[1]蒋国瑞.《多Agent制造业供应链管理》.科学出版社,2013年.
[2]倪建军.《复杂系统多Agent建模与控制的理论及应用》.电子工业出版社,2011年.