Archive for September 2nd, 2009

ABM/MAS in LUCC (2)

Wednesday, September 2nd, 2009

这一部分说平台,我主要考虑的是这8个模型Swarm, RePast, MASON, NetLogo, StarLogo, Ascape, CORMAS。

————–需要推荐的文献包括:—————-

  • Tools of the Trade: A Survey of Various Agent Based Modeling Platforms (2009), Journal of Artificial Societies and Social Simulation vol. 12, no. 2 2
  • 这一篇最齐全,最完整,比较了几乎所有的平台的五个性质(编程语言/操作系统/许可类型/主要应用方向/用户支持),并且杂志是网络版本应该是免费的。

  • Agent-Based Simulation Platforms: Review And Development Recommendations. (2006) Simulation, September 2006. pp609-623.
  • 比较了常见的四个模型,最重要是通过一个Stupid model来对比了各个模型的性能。NetLogo和Swarm表现最好,但是当时时间比较早,之后RePast等有了更好的发展。

  • Toward a Graphical ABM Toolkit with GIS Integration. (2005) The Agent 2005 Conference on Generative Social Processes, Models, and Mechanisms, Chicago, Illinois.
  • 这边应该很重要,在地学模型方面,因为他们着重比较了三个平台在GIS方面的图像表达能力的差别,包括空间文件的导入以及输出。因为时空行为的模拟一直是GIS发展的重要方向,也是各大GIS商业软件的开发重点之一。

  • Principles and Concepts of Agent-Based Modelling for Developing Geospatial Simulations. (2006) Working paper 110, Centre for Advanced Spatial Analysis, University College London, September 2006.
  • 这可是UCL的文章,地学计算模拟的翘楚,当年也还申请了的,后面想想伦敦的高物价还是不了了之。此CASA中心在CA/ABM和分形上进步神速,有很强的计算机和数学背景,文章比较了七种平台,特别是他们在geospatial上的能力。

  • Platforms and methods for agent-based modeling. (2002). PNAS 99: 7197-7198.
  • 这个不用说了,PNAS上的牛文也不应该错过

———-这七个平台有分别的介绍如下——————

Swarm最早由Santa Fe Institute开发,是基于Objective-C和Java语言的,可以说是鼻祖系列的开发平台,最早开发是用来模拟生态过程的,在生态系统模拟方面很出名,国内有UrbanSwarm模型是关于城市扩展的。

继承Swarm的最出名的是Repast,全称是The Recursive Porous Agent Simulation Toolkit (Repast)。RePast相对而言是最完整的平台,最初由java写成,功能非常强大齐全,最重要是其对地理数据的处理能力比较强。之后,出现由python写得易用的RePastPy以及Mirrosoft.Net写出的RePast.Net,现在整合成了RePastS(Simphony),可以通过Agent Analysis插件与ArcGIS整合。

MASON的全称是Multi-Agent Simulator Of Neighborhoods/Networks,它由Center for Social Complexity, George Mason University在2003年开发,同样是继承了Swarm和RePast的特性。它的特点是是轻巧快捷并且计算能力强。

————另一个系列就是Logo语言系列的成员————-

这包括NetLogoStarLogo,其最主要的目的是教学和科研目的(pedagogical and research tool)它们分别由Northwestern University, Evanston 的 Center for Connected Learning and Computer-based Modeling 和Massachusetts Institute of Technology 的 Media Laboratory开发。作为教学目的的平台,最明显的是易用性和易学性,其开发语言不开源,基于Java和C,但是语法非常简单,GUI也非常直观易用,利用其网上教程,很快能学会其语言并搭建模型。

可以看到StarLogo的页面里面有一只乌龟,那是由于模型中的agent常常被称作turtle;而NetLogo网站有很多demo模型,其中有个Urban Suite,看了之后有很大启发性;另外SLUCE(Spatial Land Use Change and Ecological Effects at the Rural-Urban Interface)模型也用到了NetLogo开发一个关于Urban Sprawl的模型,一步一步教你搭建,很有用。

————–这一部分的平台其实没有GIS功能—————

Ascape 是由华盛顿的 Brooklings Institute 开发,同样基于Java,也是从Swarm继承而来。

CORMAS 是由法国的 French Agricultural Research Centre for International Development 开发,主要用在自然资源领域。亮点是由SmallTalk语言编写的, 同样是一个简单易学的语言。

————-表格的分割线—————-

PS.为了此表格还专门找了一个插件,叫WP-Table Reloaded

这个表格横向对比了各个平台的基本性能和能力。

SWARM RePast MASON StarLogo NetLogo Ascape CORMAS
Time Early 1990s Early 1999 2003 Early 1990 1999 1997 1996
Language Objective C
Java
Java
Python
Microsoft.Net
Java Proprietary Proprietary Java SmallTalk
Operation
System
Unix/Linux
Mac OSX
Windows
Unix/Linux
Mac OSX
Windows
Unix/Linux
Mac OSX
Windows
Unix/Linux
Mac OSX
Windows
Unix/Linux
Mac OSX
Windows
Unix/Linux
Mac OSX
Windows
Unix/Linux
Mac OSX
Windows
Experience
Requirement
Strong skills
Strong Strong Basic Basic Basic Basic
Event
Driven
yes yes N/A N/A N/A no no
GIS
connection
yes
Kenge
GIS library
yes
(include
ArcGIS)
No No yes
(ESRI
file)
Beta yes (Mapinfo)
Spreadsheet
connection
yes yes No yes N/A
yes yes
Statistics
capacity
statistics
package
Some
statistics
functions
Strong yes yes many
functions
can
store
data
Main
application
Natural
social science
military
commercial
Nearly
all
aspects
Economic
Epidemic
Biology
graphics
maths
physics
social systems
games
Education
academic
Social
and
economic
systems
Economy
ecology
natural
resource
management
Demo
model
A few Many many yes yes 20-30 numerous
Documentation yes yes yes yes yes yes yes
Tutorial yes yes yes yes yes yes yes
Training no no no workshop
class
workshop
class
various
courses
no