设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 27389|回复: 10

[人工社会] 常用的几个Agent仿真平台介绍

  [复制链接]
发表于 2007-9-16 10:38:59 | 显示全部楼层 |阅读模式
前较为成熟的基于Agent模型的仿真平台主要有Swarm、Repast、MASON和NetLogo。Swarm是第一个结合框架和类库的仿真平台,它由圣塔菲研究所研发,主要是帮助研究者可以更易、更快地构建基于Agent模型。Swarm又可以分为Object-C Swarm和Java Swarm,区别在于前者是Object-C类库,后者是Java类库。由于Swarm刚开始着重于Object-C类库,因此对于偏爱Java的研究者来说使用不是很方便,为此几个年青人组成一个团队开发了完全用Java实现的Swarm,它就是Repast,后来这个团队不断完善Repast,是的它的界面和功能使用起来更方便。Swarm与Repast的关系有点类似于Unix和Windows系统之间关系。最近MASON作为一个新的Java平台也被研究者所青睐。NetLogo相对于前面三种仿真平台而言,其最大的特点是编程语言为目前所用仿真平台中最为高级的,它使用Logo语言。Logo不同于C和Java,它非常接近人类的自然语言,因此对于不懂编程知识的社会学家来说较易学习。0 H. I5 K" E0 U% q: n  ?' z
上述这四种平台之所以被广大研究者所青睐,主要是因为他们在不妨碍仿真模型复杂性的情况下提供标准的Agent模型设计和编程工具。当然它们也有各自的优缺点。前三种平台的优点非常明显,那就是他们非常强大,几乎可以实现任何模型。然而正是这一优点导致了他们自身比较复杂,从而使研究者产生望而生畏的心理,加上他们也没有能提供足够多的辅助工具来帮助研究者开发他们的模型,因此一般只有具有较好编程经验的研究者才使用这三个平台。
8 B" t! N  v6 n虽然NetLogo功能没有前面三个平台强大,但经过多年的发展和完善,已经变得非常复杂,基本上可以实现各种复杂的功能,同时还保持易用性和易学性,尤其是其编程非常简单,因此NetLogo已成为使用率最高的仿真平台。
( ^. f7 s- y, G* F7 p

" J& L$ W3 a4 [, `' A4 ]- h
; Z2 Z7 v2 R, f4 l$ M; |[ 本帖最后由 陆云波 于 2007-9-16 10:40 编辑 ]

评分

参与人数 1仿真币 +10 收起 理由
focuscon + 10

查看全部评分

发表于 2009-8-25 15:49:55 | 显示全部楼层
谢谢
发表于 2009-9-12 14:01:16 | 显示全部楼层
看来我得用LOGO做论文了。。
发表于 2011-1-8 20:43:21 | 显示全部楼层
不错不错
发表于 2011-1-17 22:14:19 | 显示全部楼层
好像还有MANA,PAX,Pythagoras,不过这几个都下载不到
发表于 2011-2-3 18:33:32 | 显示全部楼层
有物流仿真介绍吗
发表于 2011-3-29 15:21:46 | 显示全部楼层
谢谢
发表于 2011-6-24 11:06:18 | 显示全部楼层
谢谢,受用了
发表于 2013-3-15 01:02:34 | 显示全部楼层
这两年出来有出来一个,整合GIS和agent模型的,叫GAMA,对需要地理空间信息的模型非常好,见http://gisagents.blogspot.de/
发表于 2013-3-27 21:01:56 | 显示全部楼层
借陆老师的话题说说netlogo的功能,根据个人体会原创,绝非黏贴转载。3 T! e( f5 I' `9 A! U# T
  A8 H% }- i$ x) Y+ `
(1)它属于高级语言,因此对精细化的建模可能达不到java,c++的程度,但它通过api接口使得用户能够一方面体会到其快速搭建应用的威力,同时又能够采用java来进行行为的精细刻画。这就好比用标准件先机械化快速搭建房屋整体框架,再用人工定制各种建筑材料进行房间的精雕细作,而不是全部用人工来完成这些工作。实际上,除了少数算法的实现,大部分的需求根本用不到java这个层面。
- V8 ]6 `/ v: F$ S- r; c
* F0 M* |6 O- E1 q. N+ K, h- X3 k(2)通过这些年的发展netlogo已经陆续建立了与主流研究用软件的对接,包括与统计实验软件,数学计算软件,地理信息系统软件。基本上所有的研究需要它都考虑到了。$ u9 x3 o) L2 f9 r+ V% Q
( S( i; m: d# d; x  Z& w
(3)在数据结构上netlogo实际上和java一样,具有和java一样的优点与缺点,毕竟它是用java开发的。对于较为复杂的数据管理工作,它提供了与免费数据库软件的接口。
& j1 {( A7 S8 l. f+ p4 [) M6 R6 S. ]" k
(4)在软件中内置了用于system dynamics,social network等常用建模方式功能,便于实现与agent的混合建模,比如用一种方式建立行为模型,用另一种方式建立关系模型。$ i$ J6 O0 z. T* I+ S9 w
3 [6 y( _( [: u. _
(5)提供了用于多用户参与实验的网络平台hubnet,可用于组织人机交互下的行为实验。
发表于 2013-10-25 19:17:13 | 显示全部楼层
学习了,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-5-1 19:27 , Processed in 0.020667 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表