前回の記事(その1)では、単に「単純な決定ルール」を採用すると、基本的には各人にとって、「各選択肢が選ばれたときの自身の嬉しさを並べたベクトル」と「自身が正直申告したときに『単純な決定ルール』が最大化する」ベクトルが必ずしも一致しないため、正直申告が保証されないことを見ました。
この記事では、「単純な決定ルール」について数値例を出してイメージを掴んだ上で、お金の仕組みをどうデザインするかについてVCGメカニズムに繋がっていくような例(と比較として役立つ例)を見ていきます。そして、最後に重要だと思われる点を1つだけ確認します。
「単純な決定ルール」のイメージ
クラスの構成人数をここでは3人にしておきます。それぞれの個人は評価ベクトルを持っているわけですが、実際に申告するのはでもでもでもなんでも良いです。各個人は同時に何かしらのベクトルを申告します。そして仮にさんは、さんは、さんはを申告したとしたら、社会としてはを選ぶことになります(が和を最大にしていることに注意)。
同じように、さんは、さんは、さんはを申告したとしたら、社会としてはを選ぶことになります*1。このような(和の比較による)決定のアルゴリズムのことを「単純な決定ルール」と呼んでいます。
なぜ、わざわざ「単純な決定ルール」について数値例まで出したかというと、「給食のメニューを決めるために投票をしましょう。皆さん一番好ましいものを1つ選んで教えてください」のような状況が典型的であると思うのでそちらにイメージが引っ張られると、各人が申告するのがなどのベクトルであることが忘れがちになってしまうと思ったからです。各個人が申告するのはベクトルです。そして「単純な決定ルール」は、その中で和が最大になる選択肢を選びます。
上手くいかない「お金の仕組み」
前回みたのは上のような「単純な決定ルール」では正直申告を引き出せることが保証されていないことでした。ここからなんとかして、お金の仕組みを上手くデザインすることで「単純な決定ルール」を採用しても各人が正直申告することを保証したいです。
これは上手くいかない例ですが、「お金の仕組み」として*2、「単純な決定ルールがを選ぶ場合には全員に10円あげることにする。それ以外の場合には特に何もしない」というものを考えてみます*3。
この場合も例えばさんに注目すると(さんの評価ベクトルはであるとする)、さんが最大化して欲しいベクトルはとなる。さんは単純な決定ルールによってが選ばれたらだけ嬉しくて、が選ばれたらだけ嬉しくて、が選ばれたらだけ嬉しいので、さんが「単純な決定ルールは実際には申告された評価ベクトルから作った和のベクトルを最大化するような選択肢を選ぶわけだけど自分としてはこのベクトルを最大化するような決定をしてほしいなぁ」と思うベクトルは、ではなくてとなりました。しかしだからといって、最初からさんの評価額がである場合と特に何も変わらずさんが他人の申告に関係なくと正直申告をするとは言えなさそうです。
より正確にいえば、他人の申告に関係なく、「自分が最大化されて欲しいと思うベクトル(自分が「単純な決定ルールがこのベクトルを最大化するように決定してくれた良いのにな」と思うベクトル)と、「正直申告した場合に単純な決定ルールが最大化するベクトルが一致する」とはいえないわけです。
次も上手くいない例ですが、「お金の仕組み」として「単純な決定ルールがを選ぶ場合にはさんが申告したの評価額を全員にあげて、単純な決定ルールがを選ぶ場合にはさんが申告したの評価額を全員にあげて、単純な決定ルールがを選ぶ場合にはさんが申告したの評価額を全員にあげる」という仕組みを考える。これが上手くいかない理由は置いておきますが(例えばさんがすべてという申告をすることを考えれば分かりやすいと思う)こういう例を考えることもできます。*4
ここまでで2つのお金の仕組みについて見ました。どちらも正直申告を引き出すことを保証しませんが、これらの例を見ると、色々な「お金の仕組み」を考えられそうだなという気がしてきます。
重要だと思われる確認
上では「単純な決定ルール」と「お金の仕組み」についてイメージを膨らませました。実はいま見た2つの「お金の仕組み」に注目するとVCGメカニズムが正直申告を引き出すことをカチッと理解するためのポイントが見えてくる気がします。ただし、何か重要な「気づき」をここで得るというよりは、以下のことを確認しておくとその後の理解がカッチリいく気がするので確認しておくかんじです。
まずそもそも何も「お金の仕組み」がない場合には(orどんな申告に対しても全員に0円をあげるようなお金の仕組みを考える場合には)、さんの評価ベクトルがだとすると、他の人がどういう申告をしてきたとしてもさんにとって「各選択肢が選ばれたときの自身の嬉しさを並べた」ベクトルはです。
また、上の例における最初の「お金の仕組み」を考えた場合にも、他の人がどういう申告をしてきたとしてもさんにとって「各選択肢が選ばれたときの自身の嬉しさを並べた」ベクトルはで変わりません。
しかし、上の例における2番目の「お金の仕組み」を考えると、他人の申告によって(より正確にはさんの申告によって)「各選択肢が単純な決定ルールによって選ばれたときの自身の嬉しさを並べた」ベクトルは変わってきます。さんがを申告している場合には「各選択肢が単純な決定ルールによって選ばれたときの自身の嬉しさを並べた」ベクトルはとなります。
なおさんについてはこの「お金の仕組み」においては他人の申告が決まったところで、「各選択肢が単純な決定ルールによって選ばれたときの自身の嬉しさを並べた」ベクトルが何になるかすら決まりません(なぜなら自身が何を申告するかによってしまうからです)。
この整理で網羅的になっているわけではないですが、2番目の「お金の仕組み」におけるさんについての上の議論は今後重要になってきます(それを拡張するのがVCGメカニズムにおける「お金の仕組み」になるので)。
続く
*1:なお、本当は同着の場合についても考えておく必要があるが直感を掴むという目的からはあまりいらない気がするので言及していない。
*2:ちなみに、ここでいう「お金の仕組み」とは「こういう申告が行われたら、1さんには何円あげて、2さんには何円あげて、、、、nさんには何円あげよう」のようにそれぞれの申告について誰に何円あげるか(場合によっては払わせるか)を定めるものです。
*3:よりお金の仕組みの定義に沿っていえば、単純な決定ルールがを選ぶような申告があった場合には全員に10円をあげ、それ以外の申告の場合には何もしないようなお金の仕組みを考えるということ。
*4:もちろん申告に関係なく全員に円あげるなどのお金の仕組みを考えることもできますし、さんがを申告した場合にのみ単純な決定ルールが何を選ぶかに関係なく全員にあげて他は何もしないお金の仕組みなども意味は不明ですが考えることもできます。