コンセンサスアルゴリズムの優位性はどのように論じるべきか

[mathjax]

このブログを開設し、48時間が経過いたしました。


イケハヤさんにもRTいただき、多くの反響をいただきました。おかげさまで、ブログ開設48時間で1万PVを突破いたしました。これからも良い記事を書くよう心掛けたいと思います。
さて、上記の記事ではハーベスティングを徹底的に解説するため、Proof of Work、Proof of Stake、Proof of Importanceの説明も含めました。しかし、ぼくは個人的にはNEMを推しますが、上記の記事では事実を書いただけで、Proof of ImportanceはProof of Stakeより優れているだとかは書きませんでした。ビットコイン界隈の人などに、客観的な事実を伝えたかったからです。

ですが、実際問題として、PoW、PoS、PoI、どれがいいのか議論する機会もあるでしょう。それも、仮想通貨をよりよいシステムにしていくうえで必要なものだからです。しかしこのような議論は大体、ビットコインが好きな人はPoWを擁護し、NEMが好きな人はPoIを擁護することに終始し、平行線のまま終わります。

なので、どのようにこのような議論をすべきなのか、一つ提案したいと思います。

経済学的な議論をしよう

いきなりですが、結論、経済学的な議論をしましょう。

例えばですね、トヨタのアクアとホンダのフィットの燃料消費率を比較するとか、このようなシステムの優位性比較は、自然科学的です。条件を対称にして、比較をすればよいのです。

一方で、仮想通貨のように、人間行動に密接に関連し、かつ優位性の比較に有効な指標というものが存在しないものもあります。このようなシステムの優位性を比較することは、定義からして自然科学にはなりえません。ですが、だからといって抽象論を繰り出して議論することには何の意味ももちません。

PoWこそがまっとうな資本主義である

PoSはねずみ講である

PoIは結局先行者優位である

こういう議論はもうやめにしましょうと言いたいわけです。

そこで、人間行動に密接に関連したシステムを、社会科学的なアプローチで比較することはいかがか?と思うわけです。社会科学の中でも、経済学を使えば、「効用」という概念を持ち出し、効用関数をモデル化し、そのモデル化が正当であることを説いたうえで効用を比較することによって、人間行動と密接に関連するシステムを比較することが可能です。

先行研究

仮想通貨自体が、仮想通貨専門でない研究者にはまだあまり知識が浸透していないこともあり、先行研究はまだ多くありません。しかし、1つ、Proof of WorkとProof of Stakeを、経済的厚生の観点から比較した論文がありました。

Chiu[2017]

カナダ中央銀行の人が書いた論文のようです。まさにぼくの提案するような経済学的なシステム比較です。

結論としては、電力消費が原因で、PoWは厚生を大きく損失するということだそうです。

しかし、数式が複雑で、専門外の人はもちろん、経済学を知っている人でもなかなか難しい論文だと思います。

なので、論文の内容を紹介することは控えます。代わりに、経済学ではどのようにシステム比較するのかを解説し、今後の仮想通貨システムの議論に一石を投じることをこの記事の目的としたいと思います。それではまず経済学の枠組み説明からいきます。

効用

経済学では、効用と言う概念を持ち出します。これは簡単に言うと主観的な満足の指標です。人物\(i=\{1,\cdots,N\}\)がある財を\(x\)単位消費することで得られる効用を

$$u_i=u\left(x\right)$$

というように表現します。多くの場合、

$$u\left(x\right)=log\left(x\right)$$

のように、

\begin{eqnarray}
\frac{\partial u}{\partial x} &>& 0 \\
\frac{\partial^2 u}{\partial x^2} &<& 0
\end{eqnarray}

を満たす効用関数を設定します。例えば、ビールが好きな人は、ビールを飲まないよりはビール1杯飲むほうが幸せ(1行目)ですが、ビール10杯目にもなってくると苦痛を感じ、嬉しさが減っていく(2行目)と思います。このような主観的な満足を表現します。

厚生

厚生とは、簡単に言うと、複数人の効用をまとめたものです。社会の主観的な幸福度の指標になります。まとめ方として、様々な社会厚生関数が提案されています。

ベンサム型社会厚生関数

$$W=\sum_i^N u_i\left(x\right)$$

最も直観的です。ベンサム型社会厚生関数では、厚生とは効用の総和です。

ナッシュ型社会厚生関数

$$W=\prod_i^N u_i\left(x\right)$$

ナッシュ型社会厚生関数では、厚生とは効用の総乗です。ベンサム型と比べて、効用の格差が大きいと厚生は下がるようになっています。

ロールズ型社会厚生関数

$$W=min\{u_1\left(x\right),\cdots,u_N\left(x\right)\}$$

ロールズ型社会厚生関数では、厚生とはもっとも小さい効用のことです。ロールズの正義論における第二原理「社会的・経済的不平等は、もっとも不遇な立場にある人の利益を最大にすることを満たさなければならない」と対応しています。

一般化

これら3つの社会厚生関数は、社会厚生関数の一般型

$$W=\frac{1}{1-\rho} \sum_i^N u_i\left(x\right)^{1-\rho}$$

の特殊型です。不平等回避度\(\rho\)が

\(\rho \rightarrow 0\)のとき、これはベンサム型社会厚生関数になります。

\(\rho \rightarrow 1\)のとき、これはナッシュ型社会厚生関数になります。

\(\rho \rightarrow \infty\)のとき、これはロールズ型社会厚生関数になります。

ちなみに、厚生を比較するのは同じ社会厚生関数どうしでしかできないということにご注意ください。

仮想通貨の議論への適用

経済学の枠組みの説明ができましたので、最後に、仮想通貨のシステム比較をする際、経済学ではどのようになるかをご説明します。

まず効用関数を決めます。効用関数には、マイニング報酬やミンティング報酬、ハーベスティング報酬などを含め、実際の仮想通貨システムをモデル化します。

次に、動学的確率的一般均衡(DSGE)モデルなどを使い、人々が動いた結果の均衡を求め、均衡における効用を導出します。

最後に、厚生比較です。

  • ベンサム型
  • ナッシュ型
  • ロールズ型

から、採用する社会厚生関数を決め、採用した社会厚生関数ごとに場合分けをします。それぞれの場合で、どの仮想通貨のシステムが最も厚生が高いかを比較することになります。

結果、不平等回避度の低いベンサム型社会厚生関数ではProof of 〇〇〇が優位だが、不平等回避度の高いロールズ型社会厚生関数ではProof of 〇〇〇が有意である、といった話につなげられるわけです。

まとめ

もちろん、DSGEモデルを組み立てて分析するなどということは極めて高度な知識(大学院以上)を要するため、仮想通貨のシステムに興味ある全員がこのような議論をできるはずはありません。ぼくもなかなかできません。

しかし、冒頭で述べたような抽象的な議論をやめることは、仮想通貨の発展にプラスの方向に働くものだと思います。このようなロジックで議論をすると、社会科学的で生産的な議論ができるということをみなさんに知っていただけたらなと思います。