[[ja/Projects/i-wat]] | [[i-WAT シミュレーション]]

#contents

* シミュレータ [#a6a81f52]
- [[wija 開発環境]] で説明される Perforce depot からソースコードを取得可能。
- //depot/scm/main/java/org/media_art_online/iwatsim/...
** データ記述 (XML) [#w96c6f17]
- 主要な要素は以下の通り:
:<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>
** コマンド [#m93ac494]
 $ java -Xmx300M -jar iwatsim.jar [FILE]
 $ sort chain-length | uniq -c | sort -r > chain-length-distribution

** 出力ファイルと表示方法 [#d11c2199]
- '''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"


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS