ja/Projects/i-wat

方針

モデル

世界

welfare (富/幸福度)

credit/debit (購買力)

貸し付け
取得した券の時価 + 銀行口座の正の残高
負債
振り出した券の時価 + |銀行口座の負の残高|
credit/debit = 貸し付け - 負債

ラウンドと取引

積極取引
相手を見つけて資源を購入すること。ラウンド当たりの最大回数は参加者型により決められる (典型的には 3)。
消極取引
相手の要求に応じて資源を販売すること。ラウンド当たりの制限はない。

毎ラウンドの処理

出力ラウンドの処理

型シフト
参加者型毎に指定された確率に従い、参加者は平均 welfare が高い方の参加者型に変化する (有利な戦略に鞍替えする)。

破産

参加者型

以下の情報から成る:

元型: 省略型 (i-WAT ユーザ型; DefaultParticipant?)

通貨の利用
i-WAT券のみを利用する。
積極取引の条件
相手の自己生産物の所有量が 1.0以上で、その資源の自分の所有量が 1.0 に満たないのであれば、取引を行う。
相手の探索
1ホップ目をランダムに選び、2ホップ目を探す率に応じて、その相手の先をランダムに選ぶ。選ばれた相手が自分であれば失敗。
振り出しの条件
負債の最大値に至らないのであれば、振り出す。
増価型券の振り出し方法
必要な額を最高値の割合 (例: 2.0) で等分した複数枚を振り出す。これにより、1枚の額面が 1.0 を超える (と、使用できなくなる) ことを防ぐ。
使用する券の選択
所有する券のリストの先頭から、必要額を超えない範囲で追加して選択していく。
取引相手へのリンクの追加
取引相手へのリンクがなければ追加する。
振出人へのリンクの追加
i-WAT券の使用時、受取人にその券の振出人へのリンクがなければ追加する。

元型: 清算指向型 (RedeemingParticipant?)

清算取引の優先
使用する i-WAT 券を選ぶ際、清算取引になるものを優先的に選択する。

その他の振る舞いは省略型を踏襲する。

元型: 伸張指向型 (StretchingParticipant?)

チェインの長い券の優先
使用する i-WAT 券を選ぶ際、チェインの長い券を優先的に選択する。

その他の振る舞いは清算指向型を踏襲する。

元型: 清算選択型 (SelectiveParticipant?)

振出人の優先
取引相手を選ぶ際、10% の確率で、所持している券の振出人からランダムに候補を抽出し、取引可能な相手ならばその参加者を選択する。

その他の振る舞いは伸張指向型を踏襲する。

元型: WAT ユーザ型 (OriginalWatParticipant?)

通貨の利用
WAT券のみを利用する。
振出人へのリンクの不追加
WAT券の使用時、受取人に新たなリンクを追加しない。

その他の振る舞いは清算選択型を踏襲する。

元型: 銀行ユーザ型 (BankingParticipant?)

通貨の利用
銀行口座のみを利用する。
借金
負債の最大値に至らないのであれば、銀行から借りる。
i-WAT 最適化行動に合わせた調整
取引相手を選ぶ際、10% の確率で、リンク先からランダムに候補を抽出し、取引可能な相手ならばその参加者を選択する。

その他の振る舞いは省略型を踏襲する。

元型: グローバル市場銀行ユーザ型 (GlobalMarketBankingParticipant?)

相手の探索
全体からランダムに選ぶ。選んだ相手が自分であれば失敗。
取引相手へのリンクの不追加
ネットワークは取引によって変化しない。
i-WAT 最適化行動に合わせた調整
取引相手を選ぶ際、10% の確率で、ランダムに候補を抽出し、取引可能な相手ならばその参加者を選択する。

その他の振る舞いは銀行ユーザ型を踏襲する。

元型: 銀行/WAT 併用ユーザ型 (BankingWatParticipant?)

通貨の選択
相手が銀行ユーザ型であれば、銀行を利用して取引するが、口座の残高を決して負にしない。

その他の振る舞いは銀行ユーザ型および WAT ユーザ型を踏襲する。

元型: 偽薬省略型 (i-WAT ユーザ型; PlaceboParticipant?)

ランダムなリンク
振出人へのリンクの代わりに、ランダムに選択された相手へのリンクを追加する。

その他の振る舞いは省略型を踏襲する。

元型: 偽薬清算指向型 (PlaceboRedeemingParticipant?)

ランダムなリンク
振出人へのリンクの代わりに、ランダムに選択された相手へのリンクを追加する。

その他の振る舞いは清算指向型を踏襲する。

元型: 偽薬伸張指向型 (PlaceboStretchingParticipant?)

ランダムなリンク
振出人へのリンクの代わりに、ランダムに選択された相手へのリンクを追加する。

その他の振る舞いは伸張指向型を踏襲する。

元型: 偽薬清算選択型 (PlaceboSelectiveParticipant?)

ランダムなリンク
振出人へのリンクの代わりに、ランダムに選択された相手へのリンクを追加する。

その他の振る舞いは清算選択型を踏襲する。

元型: 減価最適化型 (OptimizedParticipant?)

減価型 i-WAT への最適化行動
最低値になるまで、できるだけ清算取引を選択せず、損失の高い券を優先して選択する。

その他の振る舞いは清算選択型を踏襲する。

元型: 増価最適化型 (Optimized)

増価型 i-WAT への最適化行動
最高値になるまで、できるだけ券を使用せず、使用する際はできるだけ清算取引を選択する。

その他の振る舞いは清算選択型を踏襲する。

財の生産者

食糧などの財は、ある程度の生産性を持ち、備蓄が可能で、徐々に消費される。

労働者

労働時間は、ある程度、提供できるが、備蓄できない。

情報販売者

情報は、非常に低いコストで生産 (コピー) されるが、消費も急速 (飽きられる) と見なす。

シナリオとシミュレーション結果

初期ネットワーク

基準: グローバル市場無利子銀行、債務不履行のリスク=0

項目人口2,500人人口1000人人口500人人口100人理論上の最大値
平均 welfare1265412583123951066514730

口座変動方式 (銀行, LETS) vs. WAT - あるいは何故、WAT を選択すべきか

LETS vs. WAT

項目LETSWAT
平均 welfare96759761
破産493件522件

LETS ユーザと WAT 併用ユーザの混在

WAT 併用型 50% (LETS 口座が負になるような取引をしないユーザ)

項目LETS ユーザWAT 併用ユーザ合計
比率50%50%100%
平均 welfare811698138958
破産--511件

LETS ユーザからの型シフトによる WAT 使用の普及

WAT 併用型 10% から型シフト可能

項目LETS ユーザWAT 併用ユーザ合計
最終比率59%41%100%
平均 welfare896690989021
破産--482件

利子の影響

項目利子 -1%利子 -0.5%利子 -0.1%利子 0%利子 0.1%利子 0.5%利子 1%
平均 welfare1092610593101299675985483475367
破産0件0件0件493件4件64件410件

銀行ユーザと WAT 併用型ユーザの混在

WAT 併用型 50%

項目銀行ユーザWAT 併用ユーザ合計
比率50%50%100%
平均 welfare460783936485
破産--248件

銀行ユーザからの型シフトによる WAT 使用の普及

WAT 併用型 10% から型シフト可能

項目銀行ユーザWAT 併用ユーザ合計
最終比率46%54%100%
平均 welfare488657085331
破産--339件

i-WAT 基礎データの取得

i-WAT (w/ 最適化行動)

項目i-WAT ユーザ偽薬ユーザ
平均 welfare1246112403
破産28件62件

破産率の影響 (w/o 最適化行動)

破産率 0.2%

項目i-WAT ユーザ偽薬ユーザ
平均 welfare1215312175
破産124件125件

破産率 2%

項目i-WAT ユーザ偽薬ユーザ
平均 welfare92599437
破産7616件7881件

清算指向による最適化

項目i-WAT ユーザ偽薬ユーザ
平均 welfare107049448
破産4308件7884件

伸張指向による局所最適化

項目i-WAT ユーザ偽薬ユーザ
平均 welfare71429462
破産11046件7692件

清算選択による最適化

項目i-WAT ユーザ偽薬ユーザ
平均 welfare1210511536
破産916件2390件

破産戦略の有効性

項目無戦略ユーザ破産戦略ユーザ合計
割合90%10%100%
破産率0.2%20%
平均 welfare12354964012046
最大 welfare約13000約13000約13000
最低 welfare約9200約2800約2800
破産3556件

増減価型 i-WAT

増減率の影響

人口500における基準値

平均 welfare12360
破産3件

増減型最適化行動なし

項目増減率 1%増減率 5%増減率 10%
通常減価型増価型通常減価型増価型通常減価型増価型
平均 welfare3991502634919077123488457106831301110483
4134984611311
破産0件

増減型最適化行動あり

項目増減率 1%増減率 5%増減率 10%
通常減価型増価型通常減価型増価型通常減価型増価型
平均 welfare23943596202852401035645638191130707698
263165409481
破産1件0件

減価型 i-WAT の最適化戦略の検証

増価型 i-WAT の最適化戦略の検証

最適化なし

破産18件

最適化あり

破産10件

情報生産者と新しい経済

財の生産者 vs. 労働者 vs. 情報販売者

情報の共有と減価型 i-WAT

シミュレータ

データ記述 (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
$ sort chain-length-x | uniq -c | sort -r > chain-length-distribution-x

出力ファイルと表示方法

chain-length-distribution-x
(i-)WAT券のチェイン長の分布
> plot "chain-length-distribution-x" 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-x-n
welfare の分布
> plot "welfare-distribution-x-n"
credit-distribution-x-n
credit の分布
> plot "credit-distribution-x-n"
credit-welfare-x-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-x-n
{積極/消極}取引数の分布
> plot "{active|passive}-trade-distribution-x-n"
accumulated-number-of-trades-n
取引数の累積
> plot "accumulated-number-of-trades-n"

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