はじめに
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