更改

跳到导航 跳到搜索
删除24字节 、 2020年8月18日 (二) 19:59
第78行: 第78行:     
===Swarm介绍===
 
===Swarm介绍===
===Swarm的背景===
+
====Swarm的背景====
    
Swarm是析复杂适应系统建立模型而设计的软件平台。1995 年SFI 发布了Swarm 的beta 版,此后,大约30个用户团体已经安装了Swarm并用它积极地开展建模工作,并完成了一定的论文。Swarm已经帮助提供了讨论模拟技术和方法论的焦点,还提供在特定的研究团体中模型组件和库的共享,这是智力交换的一个重要形式。最终,建立一个用于模型定义的形式化框架建立一个特定用于实验科学工具的计算机程序的必要标准。 开发Swarm 的目的就是通过科学家和软件工程师的合作制造一个高效率的可信的可重用的软件实验仪器,它能给予科学家们一个标准的软件工具集,就象提供了一个设备精良的软件实验室帮助人们集中精力于研究工作而非制造工具。 Swarm 实际上是一组用Objective-C 语言写成的类库,这是一种面向对象的C 语言。一部分图形界面,如图表、按钮和窗口,是用TCL/TK 描述的。Swarm 最初只能在Unix 操作系统和X Windows 界面下运行,1998 年四月伴随着 1 .1版的发布,Swarm 推出了可以在Windows 95/98/NT 上运行的版本。1999 年Swarm又提供了对Java 的支持,从而使Swarm 越来越有利于非计算机专业的人士使用。 Swarm的建模思想就是让一系列独立的Agent通过独立事件进行交互,帮助研究由多个体组成的复杂适应系统的行为。通过这些类库包括许多可重用的类以支持模拟实验的分析、显示和控制,即用户可以使用Swarm 提供的类库构建模拟系统使系统中的主体和元素通过离散事件进行交互。由于Swarm 没有对模型和模型要素之间的交互作任何约束,所以Swarm 可以模拟任何物理系统、经济系统或社会系统。事实上在各个广泛的研究领域都有人在用Swarm 编写程序,这些领域包括生物学经济学物理学化学和生态学等。
 
Swarm是析复杂适应系统建立模型而设计的软件平台。1995 年SFI 发布了Swarm 的beta 版,此后,大约30个用户团体已经安装了Swarm并用它积极地开展建模工作,并完成了一定的论文。Swarm已经帮助提供了讨论模拟技术和方法论的焦点,还提供在特定的研究团体中模型组件和库的共享,这是智力交换的一个重要形式。最终,建立一个用于模型定义的形式化框架建立一个特定用于实验科学工具的计算机程序的必要标准。 开发Swarm 的目的就是通过科学家和软件工程师的合作制造一个高效率的可信的可重用的软件实验仪器,它能给予科学家们一个标准的软件工具集,就象提供了一个设备精良的软件实验室帮助人们集中精力于研究工作而非制造工具。 Swarm 实际上是一组用Objective-C 语言写成的类库,这是一种面向对象的C 语言。一部分图形界面,如图表、按钮和窗口,是用TCL/TK 描述的。Swarm 最初只能在Unix 操作系统和X Windows 界面下运行,1998 年四月伴随着 1 .1版的发布,Swarm 推出了可以在Windows 95/98/NT 上运行的版本。1999 年Swarm又提供了对Java 的支持,从而使Swarm 越来越有利于非计算机专业的人士使用。 Swarm的建模思想就是让一系列独立的Agent通过独立事件进行交互,帮助研究由多个体组成的复杂适应系统的行为。通过这些类库包括许多可重用的类以支持模拟实验的分析、显示和控制,即用户可以使用Swarm 提供的类库构建模拟系统使系统中的主体和元素通过离散事件进行交互。由于Swarm 没有对模型和模型要素之间的交互作任何约束,所以Swarm 可以模拟任何物理系统、经济系统或社会系统。事实上在各个广泛的研究领域都有人在用Swarm 编写程序,这些领域包括生物学经济学物理学化学和生态学等。
 
   
 
   
   −
===Swarm的逻辑结构 ===
+
====Swarm的逻辑结构 ====
    
Swarm中最主要的四个部分,往往也是一个Swarm模拟程序经常包括的四个部分是:模型swarm(ModelSwarm)、观察员swarm(ObserverSwarm)、模拟主体和环境。  
 
Swarm中最主要的四个部分,往往也是一个Swarm模拟程序经常包括的四个部分是:模型swarm(ModelSwarm)、观察员swarm(ObserverSwarm)、模拟主体和环境。  
      −
====模型“swarm”====
+
*模型“swarm”
    
Swarm就是许多个体(对象)组成的一个群体,这些个体共享一个行为时间表和内存池。显然“Swarm”有两个主要的组成部分:(1)是一系列对象(Object);(2)这些对象的行为时间表(Action)。时间表就像一个索引引导对象动作的顺序执行。  
 
Swarm就是许多个体(对象)组成的一个群体,这些个体共享一个行为时间表和内存池。显然“Swarm”有两个主要的组成部分:(1)是一系列对象(Object);(2)这些对象的行为时间表(Action)。时间表就像一个索引引导对象动作的顺序执行。  
第99行: 第99行:       −
====观察员“swarm”====
+
*观察员“swarm”
    
模型“swarm”只是定义了被模拟的世界。但是一个实验不应只包括实验对象,还应包括用来观察和测量的实验仪器。在Swarm计算机模拟中,这些观察对象放在一个叫观察员“swarm”的“Swarm”中。 观察员“swarm”中最重要的组件是模型“swarm”。 它就像实验室中一个培养皿中的世界,是被观测的对象。观察员对象可以向模型“swarm”输入数据(通过设置模拟参数),也可以从模型“swarm”中读取数据(通过收集个体行为的统计数据)。
 
模型“swarm”只是定义了被模拟的世界。但是一个实验不应只包括实验对象,还应包括用来观察和测量的实验仪器。在Swarm计算机模拟中,这些观察对象放在一个叫观察员“swarm”的“Swarm”中。 观察员“swarm”中最重要的组件是模型“swarm”。 它就像实验室中一个培养皿中的世界,是被观测的对象。观察员对象可以向模型“swarm”输入数据(通过设置模拟参数),也可以从模型“swarm”中读取数据(通过收集个体行为的统计数据)。
第107行: 第107行:       −
====模拟主体====
+
*模拟主体
    
swarm不仅是一个包含其它对象的容器,还可以是一个不包含其它对象的主体本身。这是最简单的“swarm”情形,它包括一系列规则、刺激和反应。而一个主体自身也可以作为一个“swarm”:一个对象的集合和动作的时间表。在这种情况下,一个主体“swarm”的行为可以由它包含的其它个体的表现来定义。层次模型就是这样由多个“swarm”嵌套构成。例如,你可以为一个居住着单细胞动物的池塘建立模型。在最高层,生成包括个体的“swarm”:“swarm”代表池塘而每个个体代表池塘里的一个动物。动物的细胞也可以看作是由多个个体(细胞质)组成的“swarm”。这时需要连接两个模型,池塘作为一个由细胞组成的“swarm”,细胞也作为一个可分解的“swarm”。
 
swarm不仅是一个包含其它对象的容器,还可以是一个不包含其它对象的主体本身。这是最简单的“swarm”情形,它包括一系列规则、刺激和反应。而一个主体自身也可以作为一个“swarm”:一个对象的集合和动作的时间表。在这种情况下,一个主体“swarm”的行为可以由它包含的其它个体的表现来定义。层次模型就是这样由多个“swarm”嵌套构成。例如,你可以为一个居住着单细胞动物的池塘建立模型。在最高层,生成包括个体的“swarm”:“swarm”代表池塘而每个个体代表池塘里的一个动物。动物的细胞也可以看作是由多个个体(细胞质)组成的“swarm”。这时需要连接两个模型,池塘作为一个由细胞组成的“swarm”,细胞也作为一个可分解的“swarm”。
第114行: 第114行:       −
====环境====
+
*环境
    
在一些模型中,特别是在那些具有认知部件的个体模拟中,系统运动的一个重要因素在于一个主体对于自己所处环境的认识。Swarm的一个特点就是不必设计一个特定类型的环境。环境自身就可以看作一个主体。通常情况下,主体的环境就是主体自身。
 
在一些模型中,特别是在那些具有认知部件的个体模拟中,系统运动的一个重要因素在于一个主体对于自己所处环境的认识。Swarm的一个特点就是不必设计一个特定类型的环境。环境自身就可以看作一个主体。通常情况下,主体的环境就是主体自身。
7,129

个编辑

导航菜单