(1)背景
Swarm是美国新墨西哥州的桑塔费研究所(The Santa Fe Institute,SFI)1994年起开发的一个面向对象程序设计(OOP)的多智能体仿真软件工具,是一种基于复杂适应系统(complex adaptive system,CAS)发展起来的支持“自下而上”或称“基于过程”的建模工具集。
SFI开发Swarm的目的是通过科学家和软件工程师的合作制造一个高效率、可信、可重复使用的软件实验仪器,用来帮助科学家们分析复杂适应系统(Complex Adaptive System,简称CAS)。复杂适应系统则是指经济、生态、免疫系统、胚胎、神经系统及计算机网络等系统的统称,它是由遗传算法(Genetic Algorithms, 简称GA)的创始人霍兰(J. Holland)于1994年在SFI成立十周年时正式提出的,也迅速引起国内外学术界的极大关注,并被尝试用于观察和研究各种不同领域的复杂系统,成为当代系统科学引人注目的一个热点。
由于Swarm对模型和模型要素之间的交互方式不做任何限制,使用者则可以将精力集中在所感兴趣的特定系统中,而不必受数据处理、用户界面及其他纯软件工作和编程等方面的问题所困扰,甚至对于非计算机专业学者而言使用也是相当方便。
1989年举行的第一届国际多智能体欧洲学术会议,标志着该技术受到了研究者的广泛重视。1993年首次召开了智能体形式化模型国际会议,1994年又召开了第一届智能体理论、体系结构和语言国际会议,表明多智能体技术日益获得了重视。近几年美国桑塔费研究所每年举办的“SwarmFest”和“复杂系统暑期班”,更为全球Swarm和CAS爱好者提供一个更加系统的学习交流机会。在国内,Swarm的应用起步较晚,但发展趋势异常迅猛,尤其是2001年中国人民大学信息学院举办“Swarm仿真培训班”以后,基于Swarm研究的学者越来越多。正是由于Swarm可以模拟任何物理系统、经济系统或社会系统,所以受到国内外经济学、金融学、政治学、社会学、生物学、生态学、物理学、地理学、军事以及计算机科学等领域的专家、学者或爱好者们的广泛关注。
SFI的Swarm开发组定义Swarm为用于复杂自适应系统仿真的多智能体平台。基于Swarm仿真平台的应用研究,得到迅速的发展,所涵盖的研究涉及经济学、金融学、政治学、社会学、生物学、生态学、物理学、地理学、军事以及计算机科学等许多领域。1992年曾经有人预言:“基于Agent的计算将可能成为下一代软件开发的重大突破。"随着人工智能和计算机技术在制造业中的广泛应用,多智能体系统技术对解决产品设计、生产制造乃至产品的整个生命周期中的多领域间的协调合作提供了一种智能化的方法,也为系统集成、并行设计,并实现智能制造提供了更有效的手段。
(2)概念
Agent原为代理商,是指在商品经济活动中被授权代表委托人的一方。后来被借用到人工智能和计算机科学等领域,以描述计算机软件的智能行为,称为智能体。
“多智能体”一般专指多智能体系统(MAS, Multi-Agent System)或多智能体技术(MAT, Multi-Agent Technology)。多智能体系统是分布式人工智能(DAI,DistributedArtificial Intelligence)的一个重要分支。
多智能体系统是多个智能体组成的集合,它的目标是将大而复杂的系统建设成小的、彼此互相通信和协调的,易于管理的系统。在一个多Agent系统中,Agent是自主的,它们可以是不同的个人或组织,采用不同的设计方法和计算机语言开发而成,可能是完全异质的,没有全局数据,也没有全局控制。这是一种开放的系统,Agent加入和离开都是自由的。系统中的Agent共同协作,协调他们的能力和目标以求解单个Agent无法解决的问题。
也就是,现实世界中存在的事物,可以将其个体或组织视作多智能体,每个智能体按照其本质属性赋予其行为规则,在一个agent活动空间中,agent按照各自的规则进行行动,最后随着时间的变化,系统会形成不同的场景,这些场景可以用来辅助人们进行判断、分析现实世界人们无法直接观察到的复杂现象。
一般认为,Agent应该具有以下四个基本特征:自治性、反应性、能动性、社交性。主要表现在它的智能性和代理能力。智能性是指应用系统使用推理、学习和其他技术来分析解释它接触过的或刚提供给它的各种信息和知识的能力。代理能力指Agent能感知外界发生的消息,并根据自己所具有的知识自动作出反应。
(3)原理
CAS理论的最大贡献在于其提供了一种“自下而上”或称“基于过程”的建模研究方法,通过仿真重现真实世界的复杂现象。其核心思想是“适应产生复杂性”,主要体现在四个方面:
①智能体(Agent,亦称代理人)是主动的、活的实体,这也正是CAS理论区别于其它建模方法的关键所在;
②智能体与智能体、智能体与环境之间的相互影响和作用(即适应性)是系统演化的主要动力源;
③将宏观和微观有机地联系起来;
④引入随机因素的作用,使它具有更强的描述和表达能力。
具体建模涉及到:
- 个体Agent的推理
- 事务的分解和分配
- 多Agent规划
- 各成员Agent的目标、行为的一致性
- 冲突的识别与消解
- 建立其它Agent的模型
- 通信管理
- 资源管理
- 适应与学习
- 移动及系统的安全
- 负载平衡
(4)软件工具
基于多智能体(Multi-Agent)的仿真模拟软件比较多,相对有影响力的有
美国西北大学网络学习和计算机建模中心的NetLogo。NetLogo的前身是 StarLogo
美国麻省理工学院多媒体实验室的StarLogo
芝加哥大学社会科学计算实验室开发研制的Repast
美国爱荷华州立大学的McFadzean、Stewart和 Tesfatsion开发的TNG Lab
意大利都灵大学Pietro Terna开发的企业仿真项目jES
美国布鲁金斯研究所Miles T. Parker开发的Ascape
美国桑塔费研究所的Swarm。2004年6月发布了Swarm2.2版本,可以在Windows XP系统上运行。Swarm已获得GNU公共许可证,所有文档实例、软件和开发工具的Alla组件、可执行部件和源代码都可以免费得到。
NetLogo软件部分运行界面
参考文献
【1】 http://www.douban.com/group/topic/19343006/
【2】 http://ccl.northwestern.edu/netlogo/