ja/Projects/i-wat
モデル †
世界 †
- 人口: 2,500人を標準とする。
- 初期状態
- スモールワールド。
- 参加者間のリンクは疎。
- 最小リンク数=3
- 時間/ラウンド
- 時間はラウンド毎に進む。
- 500ラウンドを標準とする。
- 100ラウンド毎にシュミレーション結果が出力される。
- 資源
- 有限種類の資源がある。
- 種類毎に固有の生産性 (ラウンド当たりの増価高) と消費率 (ラウンド当たりの減少率) を持てる。
- 各参加者は、生産を担当する資源を持つ。
(i-)WAT 券 †
- 構成要素: 初期値, 最低値, 最高値, 増減率, 生成時刻, 参加者のリスト
welfare (富) †
credit (残高) †
シミュレータ †
- wija 開発環境 で説明される Perforce depot からソースコードを取得可能。
- //depot/scm/main/java/org/media_art_online/iwatsim/...
データ記述 (XML) †
- <min-links/>
- 初期ネットワークにおける個体の推奨最小リンク数
- <population/>
- 人口
- <resources/>
- 資源の種類の数
- <rounds/>
- ラウンド数
- <rounds-output/>
- 出力ラウンド数 (何ラウンド毎か)
- <random-seed/>
- 疑似乱数の種
- <type/>
- 参加者の型 (複数登場可能)
- <class-name/>
- 参加者型のクラスのフルネーム
- <suffix/>
- 出力ファイル名に用いる suffix
- <percentage/>
- この型の参加者が全体に示す割合(%; 足して100になる必要がある)
- <max-trades-per-round/>
- 1ラウンド当たりの最大積極取引数
- <rate-new-partner/>
- 2ホップ先まで取引先を探しに行く確率
- <rate-default/>
- 夜逃げする確率
- <interest-credit/>
- 銀行口座の正の残高に対する利率
- <interest-debit/>
- 銀行口座の負の残高に対する利率
- <max-debit/>
- 負の残高の最大値
- <rate-consumption/>
- 担当する資源のラウンド当たりの消費率
- <rate-production/>
- 担当する資源のラウンド当たりの生産高
- <max-mot-ratio/>
- 増価型 (i-)WAT 券の初期額に対する最高値の割合
- <min-rot-ratio/>
- 減価型 (i-)WAT 券の初期額に対する最低値の割合
- <rate-variance/>
- 増減率
- <rate-mutation/>
- 他の有利な型にシフトする確率
<?xml version="1.0" encoding="UTF-8"?>
<iwatsimp>
<output-chains>chain-length</output-chains>
<output-credit-distribution>credit-distribution</output-credit-distribution>
<output-debit-total>total-debit</output-debit-total>
<output-credit-welfare>credit-welfare</output-credit-welfare>
<output-link-distribution>link-distribution</output-link-distribution>
<output-link-distribution-initial>initial-link-distribution</output-link-distribution-initial>
<output-network>network</output-network>
<output-network-initial>initial-network</output-network-initial>
<output-trades-accumulated>accumulated-number-of-trades</output-trades-accumulated>
<output-trade-distribution-active>active-trade-distribution</output-trade-distribution-active>
<output-trade-distribution-passive>passive-trade-distribution</output-trade-distribution-passive>
<output-welfare-distribution>welfare-distribution</output-welfare-distribution>
<min-links>3</min-links>
<population>250</population>
<resources>100</resources>
<rounds>500</rounds>
<rounds-output>100</rounds-output>
<random-seed>31415926535897932</random-seed>
<type>
<class-name>org.media_art_online.iwatsim.PlaceboHedgingParticipant</class-name>
<suffix></suffix>
<percentage>100</percentage>
<max-trades-per-round>3</max-trades-per-round>
<rate-new-partner>0.2</rate-new-partner>
<rate-default>0.02</rate-default>
<interest-credit>0.01</interest-credit>
<interest-debit>0.01</interest-debit>
<max-debit>10.0</max-debit>
<rate-consumption>0.1</rate-consumption>
<rate-production>3.0</rate-production>
<max-mot-ratio>2.0</max-mot-ratio>
<min-rot-ratio>0.0</min-rot-ratio>
<rate-variance>0.0</rate-variance>
<rate-mutation>0.0</rate-mutation>
</type>
</iwatsimp>
コマンド †
$ java -Xmx300M -jar iwatsim.jar [FILE]
$ sort chain-length | uniq -c | sort -r > chain-length-distribution
出力ファイルと表示方法 †
- n はラウンド
- 表示アプリケーションの説明がない場合は gnuplot
- chain-length-distribution
- (i-)WAT券のチェイン長の分布
> plot "chain-length-distribution" using 2:1
- initial-link-distribution, link-distribution-n
- (初期)リンクの分布
> plot "initial-link-distribution", "link-distribution-n",...
- network-n.net
- ネットワーク (参加者間のリンク)
- Pajek
- 例: 以下のメニュー項目を利用
- Net
- → Paths between 2 vertices → Distribution of Distances → From All Vertices
- Draw
- → Draw
- welfare-distribution-n
- welfare の分布
> plot "welfare-distribution-n"
- credit-distribution-n
- credit の分布
> plot "credit-distribution-n"
- credit-welfare-n
- credit welfare initial-links links の分布
> plot "credit-welfare-n" using x:y
- 2:1
- welfare:credit
- 3:1
- initial-links:credit
- 4:1
- links:credit
- 2:3
- welfare:initial-links
- 2:4
- welfare:links
- total-debit-n
- 世界全体の負債
> plot "total-debit-n"
- {active/passive}-trade-distribution-n
- {積極/消極}取引数の分布
> plot "{active|passive}-trade-distribution-n"
- accumulated-number-of-trades-n
- 取引数の累積
> plot "accumulated-number-of-trades-n"