はじめに

Swarmとは、Santa Fe Institute(サンタフェ研究所)が開発した、Agent Based Simulation で最も有名なシミュレータです。 このシミュレータはObjective CやJavaで記述することができます。
 次のサイトが総本山のHPです。
http://www.swarm.org/

その他にも次のサイトも有用です。

http://www.swarm.org/index.php/Swarm:_contributed_code
→sample codeが置いてある。
http://www.sscnet.ucla.edu/99W/polisci209-1/
http://www.sscnet.ucla.edu/99S/polisci209-1/
→UCLA 政治学部大学院で 1999 年春、冬学期に行われた、Swarm を使ったプログラミングの授業のサイト。
http://cscs.umich.edu/~rlr/
→Dr. Rick L. RioloのHP.
http://www.humboldt.edu/ecomodel/index.htm
→開発したサンプルが手に入ります(Individual-Based Ecological Modeling at Humboldt State University)

 日本語でもSwarmのインストールから使い方まで説明しているサイトがあります。 ただしJavaのためであったり、Cygwinを使うものであったりと部分的には参考になりますが、 これをマネしただけではインストールすらできません。

1.http://www.quintessa.co.jp/study0501.html

2.http://www.unfindable.net/swarm/ (for Java)

3.http://www.iba.t.u-tokyo.ac.jp/software/Swarm_Software/ (for Java)

4.Documentation Set for Swarm 1.4 (構造計画設計が翻訳)

インストール

 次のサイトからWindows版やLinux版など様々なSwarmがダウンロードできます。
http://www.swarm.org/index.php/Swarm:_stable_release
ここから自分のシステムに合うSwarmをダウンロードすれば、良いだけですが、 これが難しい。 というものこのサイトは古く多くがリンク切れしています。 またリンクがつながったとしてもJavaのバージョンが古いなどなかなか上のHPに書いてある通りにしてもインストールは難しいのが現状です。 ご承知の通りLinuxの場合には自分でコマンドを書いてインストールする必要があります。
 そこで本HPではWindows 7 (64bit)にVM Player 3.0でUbuntu 10.04がインストールしてあるPCにSwarmをインストールをすることを説明します。

Step 1) gccのバージョンを調べる
→Swarm2.2ではgccのバージョンが4.x以上の場合には使えないらしいので、まずgccのバージョンを確認する必要があります
$ gcc -dumpversion

私のは、4.4.3でした。

Step 2) Swarm のダウンロード

 次のサイトから「swarm_2.4.1.orig.tar.gz」をダウンロード。

http://pj.freefaculty.org/Swarm/Swarm-Packages/Ubuntu/10.10/i386/swarm/

Step 3) インストール

wget http://pj.freefaculty.org/Swarm/Swarm-Packages/Ubuntu/10.10/i386/swarm/swarm_2.4.1.orig.tar.gz
sudo apt-get install libhdf4-dev libhdf5-serial-dev gobjc libobjc2

 ここでsudo関連のエラーが出てくるかもしれません。 例えば、Authentication failure。 実はUbuntuではインストール時には、rootのパスワードは設定されていないため、 sudoやsu rootからroot権限となろうとしても、パスワードのエラーとなる。 そこで、rootのパスワードを作成すればOKです。

パスワードの作成:
$ sudo su -
# [password]の入力

 これで脱線が終了し、Swarmのインストールに戻ります。

mkdir swarm-install
cd swarm-install
wget http://pj.freefaculty.org/Swarm/Swarm-Packages/Ubuntu/10.10/i386/blt/blt_2.4z-5_i386.deb
wget http://pj.freefaculty.org/Swarm/Swarm-Packages/Ubuntu/10.10/i386/blt/blt-dev_2.4z-5_i386.deb
wget http://pj.freefaculty.org/Swarm/Swarm-Packages/Ubuntu/10.10/i386/swarm/libswarm0_2.4.1-1_i386.deb
wget http://pj.freefaculty.org/Swarm/Swarm-Packages/Ubuntu/10.10/i386/swarm/libswarm-dev_2.4.1-1_i386.deb
sudo dpkg -i blt_2.4z-5_i386.deb
sudo dpkg -i blt-dev_2.4z-5_i386.deb
sudo dpkg -i libswarm0_2.4.1-1_i386.deb
sudo dpkg -i libswarm-dev_2.4.1-1_i386.deb

 これでSwarmのインストールは終了です。

コンパイル

 自分でコードを書くのは大変なので、例えば次のサンプルをDL。
http://ftp.swarm.org/pub/swarm/apps/objc/sdg/swarmapps-objc-2.2-3.tar.gz

まず解凍する。
tar zxvf swarmapps-objc-2.2.tar.gz

ここで試してみたいフォルダに移動(cdで)

 ここではheatbugsへ移り、Objective-C のコンパイル。

make
./filename

で良いのですが、ここではMakefileを少し変更する必要があります。

include $(SWARMHOME)/etc/swarm/Makefile.appl

include /etc/swarm/Makefile.appl
へ。

この例場合は

make
./heatbugs

これで一応、結果が表示されます。

出力結果




Back to C Language

Google






↑ JavaでSwarmをやる人向け。【筆者HP】

↑ 論文集

↑ 筆者の研究紹介。特にSugarScapeについて。

MASを使う人にはよさそう

↑ 論文集

↑ 論文集