Swarm安装与开发环境配置

如果你正在研究多智能体系统(Multi-Agent Systems,MAS),如果恰巧你有一点Java程序设计基础,如果更巧的是你对用Swarm for Java开发MAS抱有浓厚的兴趣,那么请跟随我一起来搭建一个JDK+JCreator+Swarm的轻量级MAS开发环境吧。不过我们默认你已经安装好JDK和JCreator——没装好的话请自行查找相关资料并安装。关于JDK,我用的是JDK1.5,不过JDK6早已经发布了;关于JCreator,我用的同样是古董级的3.5版本,无他,习惯而已。


对于Swarm就不多做介绍了,下面直奔主题,follow me。


Swarm下载 

Swarm的官方主页(http://www.swarm.org/)提供了其下载地址http://ftp.swarm.org/。下载页面的目录如图1所示。

1 Swarm下载主页


要下载Java版本的Swarm,请按照图2提示的路径找到Swarm-2.2-java.tar.gzSwarm-2.2-java.zip压缩包。这是截止到我写此文时已发布的版本。

2 Swarm for Java下载页


这里,我推荐另一个下载地址http://eco83.econ.unito.it/dottorato/。该地址提供了搭建Swarmfor Java开发环境所需要的所有组件——除了JCreator。打开下载链接,界面如图3所示。

3 Swarm CD下载主页


找到Swarm-2.2-Tutorial-CD,点进去之后有两个选项:可以下载比较大的.iso集成包,其中包含了JDKeclipse等搭建Java开发环境所需要的软件或工具;也可以打开第二个文件夹,选择自己所需要的组件下载。

4 Swarm CD下载页


我们打开第二个文件夹,找到并下载StartJavaSwarm.batSwarm-2.2-java.tar.gzjheatbugs-2001-03-28.tar.gzjmousetrap-2001-09-13.tar.gz。其中后两个是Swarm示例程序。此外,doc-swarm有诸多参考资料、手册,可以选择性下载。

5 Swarm CD可选的组件


Swarm安装

现在我们来在JDK基础上构建Swarm运行环境。解压上述已下载的压缩包,其包含的子目录如下:

Swarm-2.2-java/

…………………/bin/

…………………/include/

…………………/lib/

…………………/share/

6 Swarm开发包的子目录


然后在你自己的硬盘中开辟一个专用空间,建立一个文件夹,用于存放Swarm的各个组件以及你自己开发的Swarm程序文件。将上述文件全部复制到指定目录下。本人构建的工作目录如下:

D:/JIDE/Swarm/

…………………/bin/

…………………/include/

…………………/lib/

…………………/share/

…………………/work/

…………………/StartJavaSwarm.bat

…………………/Swarm2.2_Java_API.chm

7 Swarm工作目录


其中,/work/目录是个人程序/项目源代码存放的场所。Swarm2.2_Java_API.chm是从Swarm主页上下载的API文档。


为了能够在我们的开发环境中启动Swarm,需要修改StartJavaSwarm.bat文件。打开StartJavaSwarm.bat

StartJavaSwarm.bat

1

2

3

4

5

6

7

8


9

10

11

12

@echo off

set SWARMHOME=C:/Swarm-2.2-java

set JAVA_HOME=C:/j2sdk1.4.2_08

set SWARMDIR=%SWARMHOME%

set PATH=%PATH%;.;%SWARMHOME%/bin;%JAVA_HOME%/bin

set LTDL_LIBRARY_PATH=%SWARMHOME%/lib

set LD_LIBRARY_PATH=%SWARMHOME%/lib

set CLASSPATH=%SWARMHOME%/share/swarm/kawa.jar;%SWARMHOME%/share/swarm/swarm.jar;%CLASSPATH%

echo SWARMHOME=%SWARMHOME%

echo JAVA_HOME=%JAVA_HOME%

echo JavaSwarm Variables initializated

CMD /K

8 原始StartJavaSwarm.bat文件


我们来修改以上文件。这里先给出修改后的结果,再逐行解释。

StartJavaSwarm.bat

1

2

3

4

5

6

7

8

9

10

11

12

13

14

@echo off

set SWARMHOME=D:/JIDE/Swarm

set JAVA_HOME=C:/Program Files/Java/jdk1.5.0

set SWARMDIR=%SWARMHOME%

set PATH=%PATH%;.;%SWARMHOME%/bin

set LTDL_LIBRARY_PATH=%SWARMHOME%/lib

set LD_LIBRARY_PATH=%SWARMHOME%/lib

set CLASSPATH=%SWARMHOME%/share/swarm/kawa.jar;%SWARMHOME%/share/swarm/swarm.jar;%CLASSPATH%

echo SWARMHOME=%SWARMHOME%

echo JAVA_HOME=%JAVA_HOME%

echo JavaSwarm Variables initializated

java %1

exit

CMD /K

9 修改后的StartJavaSwarm.bat文件


新文件第2行修改了SWARMHOME环境变量,它的值是开发环境所在目录。

3行修改成JAVA_HOME环境变量所在目录。

4行不需要修改。

5行稍微解释一下。由于本人的Windows操作系统中的环境变量PATH已被设置为包含%JAVA_HOME%/bin,故这里将其删去。一般情况下这一行可不作修改。

6~11行都不需要修改。

1213行为新添加的两行,这是为了方便在JCreator中直接运行最终的Swarm程序。命令“java %1用于运行.class文件,“%1”是传递给java命令的参数,代表当前的.class文件,在下文中将详细解释。


使得JCreator能够编译Java for Swarm源文件

这一步的主要工作是在JCreator中配置类路径,以使JCreator能够顺利编译Swarm程序源文件。我用的是JCreator3.5 Pro汉化版,这一版本已经伴随我多年了,中途当然也出轨过,试图更新到4.5版(目前最新版已到了5.0了)。不过用来用去,还是3.5的用着最舒服。老婆还是原配的好啊。


打开JCreator,依次选择“配置”——“选项”,打开选项卡,如图10所示。

10 JCreator配置


找到并点击“JDK配置文件”,在右边视图中选中“JDK 版本 1.5.0”选项(有可能你的配置是JDK 6版本),如图11所示。

11 JCreator选项界面


点击“编辑”,出现“JDK 配置文件”视图。

12 JCreatorJDK配置文件界面 


在“类”的配置中,选择“添加”——“添加存档”。

13 添加类存档 


D:/JIDE/Swarm/share/swarm下的两个.jar文件kawa.jarswarm.jar添加到类路径中。

14 选择所需的.jar文件


这样就可以在JCreator中编译swarm源程序了。我们打开一个示例程序试试。


将下载的示例程序jmousetrap解压并复制到/work/目录下。打开StartMousetrap.java并编译。


成功编译后,这时你会发现,想在JCreator中通过F5直接运行StartMousetrap.class是不能成功的,因为Swarm项目文件的运行依赖于StartJavaSwarm.bat中的设置。因此,通常应该先双击运行StartJavaSwarm.bat,然后在命令行中以“java*”的形式运行Swarm程序。


如果你足够懒的话,你应该会很希望像运行普通的Java程序一样,一键运行Swarm项目程序。


下面提供在JCreator中的解决方案。


使得JCreator能够执行Swarm应用程序

JCreator提供了自定义工具,可以为开发过程中常用的辅助工具建立快捷方式到工具栏中,从而在需要时可以很方便地打开。


添加工具的方式如下:依次点“配置”——“选项”,选择“工具”。

15 配置辅助工具 


点击“新建”,这里列出了可以作为工具的应用程序类型。我们要为StartJavaSwarm.bat添加工具,需要选择“程序”。

16 新建程序 


选择工作目录下的StartJavaSwarm.bat文件,打开。

17 StartJavaSwarm.bat 


接下来我们需要配置StartJavaSwarm.bat的参数。还是在“选项”界面,点开左边树形栏目的“工具”,找到刚才创建的StartJavaSwarm(名称可以自行更改),右边界面给出了该工具的配置。如图18所示,在参数一栏中输入:$[CurClass]


这里的$[CurClass]java.exe的命令行参数,代表当前的类文件,也就是你的JCreator界面当期显示的Java文件编译生成的.class文件。还记得前面StartJavaSwarm.bat文件第12行的“java %1吗?$[CurClass]的值被传递给%1,经过java命令后程序开始运行。

18 配置参数


现在,我们可以在JCreator界面上一键运行Swarm了。如下图所示,在JCreator的工具栏上的第一把工具就是StartJavaSwarm了。它告诉我们,你可以用ctrl+1的方式快捷运行该工具。如果你的JCreator界面没有显示工具栏,请右击任务栏的空白处,将“工具”一项的前面勾上。

19 创建好工具后的界面 


好了,测试一下吧。打开示例程序jmousetrapmain方法所在的文件StartMousetrap.java,编译,然后按ctrl+1

20 Swarm运行测试


很酷吧!

 

你可能感兴趣的:(Agent开发)