机制设计专栏(2)-说一说IC机制

原创 2016年01月14日 15:03:36

一,IC机制是什么

IC机制又叫激励相容机制,incentive compatible mechanism,他的好处一方面他是直接机制分析的源头,另一方面他良好的让大家主动披露自己真实的意图的性质。这里我们分析就是这样一类机制,他关注机制设计中的一个很有用的性质,truth-telling或strategy-proof。

准确的定义为:

二,刻画所有的IC机制

我们沿用social choice的角度来抽象构造我们的机制:定义在n 个agenst的偏好(或估值)空间上一个机制M=(f,p1,p2,...,pn)由social choice function f:V1xV2x...XVN->RN和每个agent的支付pi组成。
如下proposition给出所有了IC机制的特征是个充要条件:

条件一是说agent的支付不应该依赖agent自身的私人信息(type或偏好或估值),而只应该依赖于f 的结果,注意到后面的说明:如果我们的agent的估值改变了但是没有改变social choice结果,那么他的支付不发生改变,即支付与自身估值无关。第二个条件是说这个机制应该是最大化每个agent收益的机制。
看到上面的条件中涉及到了两个函数,social choice function和payment function的构造。下面我们首先考虑social choice function的结构特性。因为,后面我们将会看到social choice function 通常来说唯一的决定了payment。

WMON性质是说当一个agent改变了他的估值从而造成social choice结果的改变,那一定是因为对于agent来说新的social choice增加了他的估值(type,类似于策略性修改的动机)。但是从上面的定义来看,WMON条件非常严格,定义非常紧,因为他要求对于每一个agent来说都要满足这种动机要求,是一种依靠local information 进行的定义。有这个定义我们可以退出一个非常有用的定理:

第一个if 说明了所有的IC机制其social choice function都具有弱单调性(WMON),第二个if 是对机制设计很重要的,他提供了一种构造IC机制的方法,只要偏好空间是凸集,那么在这个空间上任意一个满足WMON条件的social choice function,都存在一个支付函数,他们两个生成的机制是IC的。
        我们来看看如何构造social choice function,由于WMON的定义非常严格,从而满足这样条件的函数也不是那么容易找到的,我们不仅要问social choice function有没有一种全局属性的条件来生成IC机制。结果说明,social choice function 的构造intimately 依赖于agent的偏好空间。我们对于两种极端例子是有的,对于一般的这依然是个有待研究的问题。
一种极端的例子是偏好空间无限制(unrestrained domain),即Vi=RA(对所有候选项都可由偏好,A代表选项的个数),在这种情况下,唯一的social choice function是一个最大仿射器(affine maximizer).


这三个东西递进展开。第一个定义了一个最大仿射器,第二个给出了如何构造payment function,第三个说明了所有无限制domain的IC机制的唯一性。对于这个结论能否relax在Vi上的限制并保持结论依然是个未解决的问题。
另一个极端是偏好为一维空间(single-minded),比如在拍卖问题中,如果结果是”我-wins“那么我对这个备选项有估值(就是自己对待拍物品的真实估值),如果是“其他人-wins”,我对这些备选项的估值为0.
我们成一个机制是标准化的,如果losing的支付为0.注意到每一个IC机制能能够转化为标准化的机制。

对比与无限制的特殊例子:

而对于payment function:
至此,关于IC机制的部分感觉内容差不多了,下面是IC机制的一个非常重要的一类。所以单独拿出来说说。

三,VCG机制

关于VCG机制的历史,做一个简单的描述,最开始的时候是Vickrey对于同质多物品(边际递减估值)拍卖(1961),他利用pay the l highest rejected的方式证明了他设计的这种机制是说真话是弱占优的,并且机制是有效率的;紧接着,Clarke(1971)在公共品生产(public goods)的效率分析中提出了一种“pivotal mechanism”,并证明了这种机制能保证真实的披露自己对公共品的估值是弱占优的并且结果是有效率的;后来,上面的机制统一的被Groves(1973)给抽象化的推广了,提出之前的两个机制都是一类abstract mechanism的特例,这种abstract mechanism目前我们就称之为VCG mechanism。
每一个VCG机制都是IC的,我们说agent是IR的如果他的回报(vi-pi)>=0,我们说预算平衡(budget balanced,BB)让所有期望值加起来>=0。

四,对VCG机制的分析

我们来看看在支付函数中自由函数hi的设定,由于hi的自由性,所以我们可以设定特定的hi来得到一些优良的性质。比如作为机制设计者来说的话,我们不希望付钱给agent,我们希望agent付钱给我们,比如当hi=0的时候,pi<0说明机制要付给每个agent一些钱,因此hi的设定就很关键了。下面是定义的Clarke pivot rule,他是VCG中重要的一种hi的设定,具有优良的性质:
上述的pivot rule的要义是agent需要支付的money是由于他的参与而给其他人所带来的外部性。第一行最优一个i改为j。这种pivot rule带来了VCG mechanism 不需要向agent支付任何东西(pi>=0),如果还能保证vi(a)>=0,这种机制还是IR的。The spirit of the Clarke pivot rule in such cases can be captured by a modified rule that chooses b as to maximize the social welfare "when i does not participate" where the exact meaning of this turn out to be quite natural in most application.
       下面再介绍一种很有用的payment rule.
其中左边代表带有basis si 的agent i的支付,k代表allocation rule,t代表agent的类型(估值),右边的IRi函数表示agent i 的类型到其外部选项的映射(就是说如果说我的类型为s,那么我如果不参加这个机制,我的收益为IRi(s)).注意到当si=0,IR=0时,与Clarke pivot rule一样了,这个可以算作是上面rule的推广化。由于在这个rule里面si是未知参数因此我们需要确定一下如何选择最优的(一般来说IR函数通过具体场景能够先确定)。si 由下面确定:
这种确定规制的好处是:注意上上述是取最小值,因此他最大化了agent的收益,并且有当agent的type为下划线ti时,收益为IR(下划线ti)即agent的外部选项(个体理性值),所以下划线ti又被称为agent i的“most relucant”type,因为他不参与这个机制收益也是IR(下划线ti);当agent的type不为下划线ti时,有
即参加机制不低于外部选项IR,所以这个rule在满足了IC的前提下又自动满足了IR,并且:
因此这个rule可以说是最优的rule了。要分析budget balance等在这个rule下分析是非常正常的。上面支付最大化定理是利用收益等价原理证的,有兴趣可参考Efficient Mechanism Design(Vijay Krishna, Motty Perry, 2000)。
不过虽然上述rule满足了IC,IR,efficient但不一定满足BB(budget balanced),从Green 和Laffont(1977)的工作中我们知道,没有哪一种占优机制能一定保证BB。这个定理看来让我们对上面的rule有丝丝的遗憾(不过也没办法,世界要是那么完美就好了)。但是既然占优机制没有,那么比占优机制更广的贝叶斯机制有没有呢,Arrow ,d'Aspremont 和Gerard-Varet(1979a)给出肯定的答案,他们设计的AGV(又叫期望外部性机制)一定能保证IC,BB,但是IR就不一定满足了。既然没有一种完美的机制能够一定保证同时满足IC,IR,BB,EE;那如果加上一点条件呢,加上条件问题就好办了:
注意到是 if and only if.

五,必然不相容的例子

举两个例子说明一下这个问题问题。一个是bilateral trade,一个是public project。

1.bilateral trade


有一个seller(agent 1)要买一件物品,一个buyer(agent 2)要买这件物品。这个场景用机制设计的角度为,候选项K={1=no trade,2=trade}.seller的type为(t1(1),t1(2)=0)就是对于不交易这个选项有估值t1(1)>0(表示seller对于这个物品的自己的估值),交易的话为0(注意估值不考虑payment);对于buyer来说,他的type为(t2(1)=0,t2(2)>0),不交易什么都没有,所以估值为0,交易的话估值为t2(2)>0(表示buyer对这个物品的真实估值,注意估值不考虑payment);很显然,IR1(t1)=t1(1)(因为不参加机制的话还是有价值t1(1)的),IR2(t2)=0(不参加的话就当没发生一样)。

显然,从效率的角度考虑,当t1(1)>t2(2)时,K=1,SW(t)=t1(1);反之K=2,SW(t)=t2(2)。SW=给定一个K,把agent的估值(type,对应相应的K)加起来。很自然的我们使用VCG结合最后那个优良的rule来考虑这个机制问题。通过上述求下划线ti可得。下划线t1=(1,0),下划线t2=(0,0).下面给出下划线t1的计算过程。
因此有了下划线t,利用VCG支付规制就能得出
下面给出第二个的计算过程:
通过上述计算我们得到:

注意到上面没有特指VCG而是说mechanism,也就是说,如果VCG都满足不了上述条件(IC,IR,EE,BB),那么其他机制也做不到。
因此一般对于机制设计,如果涉及到IC.IR,EE,我们总会首先考虑VCG然后在看看一下其他条件比如BB是否满足,不满足的话我们在考虑其他方法,比如牺牲掉EE换取BB等等。

2.public project

政府要生产一个产品(桥啊什么的)(K=0不生产,K=1生产),每个agent能从这个工程中得到一些好处(type),生产这个东西花费c,显然当大家的获得的好处大于c时K=1,否则K=0.在本例中显然有IR=0.

由VCG支付我们可得:

我们下面证明把收上来的支付加起来小于cost c:

因此:

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012324934/article/details/50515178

Linux hotplug_uevent机制

做产品时经常要用到自动挂载,自动启动
  • 2017年01月12日 14:52

APP中缓存、加载与刷新机制设计

一、缓存机制1、为什么要加缓存?场景一:【等待】,在向服务器请求新的数据时。我们让用户看到什么?第一种是漂亮的等待加载页面;第二种是缓存的内容。对于第二种,用户可以对页面进行操作,等待新数据时可以查看...
  • mayrzjj
  • mayrzjj
  • 2018-03-07 15:52:51
  • 17

基于路由机制设计的app架构思路

转载请注明出处:王亟亟的大牛之路有差不多接近一个多月没发文了,最近事情比较多。各种会,写各种计划,解决各种问题,以及团队内部扩招那些事(每天邮箱各种简历眼花缭乱)先安利:我的Git 之后会把内容都往...
  • ddwhan0123
  • ddwhan0123
  • 2017-04-22 23:54:50
  • 3182

机制设计专栏(2)-说一说IC机制

一,IC机制是什么 IC机制又叫激励相容机制,incentive compatible mechanism,他的好处一方面他是直接机制分析的源头,另一方面他良好的让大家主动披露自己真实的意图的性质。这...
  • u012324934
  • u012324934
  • 2016-01-14 15:03:36
  • 486

算法博弈:机制设计

Mechanism Design General Mechanism Incentive Compatibility Myerson's lemma Virtual Welfare Revenue-...
  • jtongxin
  • jtongxin
  • 2017-07-22 20:59:57
  • 234

APP中缓存、加载与刷新机制设计

一、缓存机制 1、为什么要加缓存? 场景一:【等待】,在向服务器请求新的数据时。我们让用户看到什么?第一种是漂亮的等待加载页面;第二种是缓存的内容。对于第二种,...
  • azengqiang
  • azengqiang
  • 2016-05-07 17:17:54
  • 6873

百度大牛讲机制设计和计算广告学

转自: http://blog.sina.com.cn/s/blog_747e86a90100reyd.html 声明:本系列是一般性介绍,多处引用了田国强老师的《经济机制设计和信息经济学》原文,恕...
  • bigheadyushan
  • bigheadyushan
  • 2017-09-12 23:27:30
  • 345

界面框架中的消息机制设计

    可能刚开始做程序的朋友们都有这么个同感:在开发后期,代码往往凌乱不堪,阅读和编码都比较吃力;跟据消息处理机制,和大家说说我的想法。    界面框架中各窗体、各同等级控件都是相互独立的,窗体与窗...
  • WhatWhoWhere
  • WhatWhoWhere
  • 2005-05-25 12:40:00
  • 1650

APP系统报错日志反馈机制设计

APP日志调取与服务器的交互设计APP日志调取接口设计接口约定接口返回说明 参数 参数类型 说明 code Integer 含义类似http协议返回码,200代表成功 mes...
  • RuihanChen
  • RuihanChen
  • 2016-04-12 15:16:07
  • 3504

如何实现缓存系统的更新机制

问题是这样的:假设要你设计一个缓存系统,你如何实现缓存的更新机制! 例如某网站具有高并发访问量,为提高性能,其中的一些网页页面都是存放在缓存中的,当需要更新缓存中的页面时,缓存系统如何完成缓存的更新...
  • TongWaccs
  • TongWaccs
  • 2014-10-20 09:56:27
  • 450
收藏助手
不良信息举报
您举报文章:机制设计专栏(2)-说一说IC机制
举报原因:
原因补充:

(最多只允许输入30个字)