[[ja/Projects/i-wat]] #contents * モデル [#j71bc76b] ** 世界 [#sfe023c3] -人口: 2,500人を標準とする。 -初期状態 --スモールワールド。 --参加者間のリンクは疎。 --最小リンク数=3 -時間/ラウンド --時間はラウンド毎に進む。 --500ラウンドを標準とする。 --100ラウンド毎にシュミレーション結果が出力される。 -資源 --有限種類の資源がある。 --参加者は各資源を所有でき、所有の量は実数により表現される。 --種類毎に固有の生産性 (ラウンド当たりの増価高) と消費率 (ラウンド当たりの減少率) を持てる。 --各参加者は、生産を担当する資源を持つ。 -通貨 --通貨の価値と資源の量は 1:1 で対応する。 ---ある資源を 1.0 購入するためには、1.0 の価値の通貨が必要となる。 --参加者全員が銀行に口座を持ち、銀行から借りられる口座変動式の通貨を利用できる。 --自律的な通貨である WAT/i-WAT が利用できる。 ---WAT/i-WAT の基本的な仕組みであるワットコアについては http://www.media-art-online.org/iwat/help/core.html を参照。 ** (i-)WAT 券 [#o2d11f84] -構成要素: 初期値, 最低値, 最高値, 増減率, 生成時刻, 参加者のリスト ** welfare (富) [#d4d474ff] ** credit (残高) [#bb500e2c] * シミュレータ [#u53002a2] - [[wija 開発環境]] で説明される Perforce depot からソースコードを取得可能。 - //depot/scm/main/java/org/media_art_online/iwatsim/... ** データ記述 (XML) [#qca22560] - 主要な要素は以下の通り: :<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> ** コマンド [#z4de9109] $ java -Xmx300M -jar iwatsim.jar [FILE] $ sort chain-length | uniq -c | sort -r > chain-length-distribution ** 出力ファイルと表示方法 [#b1cb3a90] - '''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"