vcg

50
VCG Computational game theory Fall 2010 by Inna Kalp and Yosef Heskia

Upload: emi-perez

Post on 31-Dec-2015

25 views

Category:

Documents


0 download

DESCRIPTION

VCG. Computational game theory Fall 2010 by Inna Kalp and Yosef Heskia. Mechanisms with money. group of all valuation functions for player i. A – group of alternatives . ( is a single alternative) Each player is determined by his valuation function :. - PowerPoint PPT Presentation

TRANSCRIPT

VCG

Computational game theoryFall 2010

by Inna Kalp and Yosef Heskia

Mechanisms with money

• group of all valuation functions for

player i.• A – group of alternatives. ( is a

single alternative)• Each player is determined by his

valuation function:

iV

Aa

RAvVvi jij ::

A model for n players:

Mechanisms with money – cont.A mechanism with money consists of:• Social choice function:• Payments: -

payment for player i.

AVVVf n ...: 21

RVVVp ni ...: 21

…1p 2p 3p Rpn Aa

Mechanism )...,( 1 nppf

2v 3v nv…1v

iii pavu )(• The utility function of player i:

Truthful mechanism:

Definition: Incentive compatible (IC) (or truthful) mechanism:

i.e. – the utility function of player i maximizes when he tells the truth.

),'()'(),()(

'),'(,),(::

iiiiiiii

iiiiii

vvpavvvpav

avvfavvfVvNi

Our goal: Find a mechanism that:

1)Incentive Compatible.2)Maximizes the social welfare.

Definition: social welfare:

Where is the true valuation of player i, i.e. no one is lying..

n

ini vvfv

11 )),...,((

iv

VCG Mechanism

Definition: VCG (Vichery Clarke Grove) mechamism: a mechanism with money s.t:

Given valuations , returns:nvvv ..., 21

)...,( 21 nvvvf

n

ii

Aaav

1

)(maxarg

ij

jiini avvhvvvp )()()...,( 21

Theorem: VCG mechamism is:(1) IC(2) Maximizes social welfare

VCG mechanism. Cont.

Proof: first, it follows by definition that VCG maximizes social welfare, since:

We now have to prove that VCG is Incentive Compatible.

VCG maximizes social welfare

)...,( 21 nvvvf

n

ii

Aaav

1

)(maxarg

• We shall fix player i and valuations vector for the other players.• We’ll define as the real valuation, and as the false

valuation. • We also define:

VCG is IC

iv iv'iv

),( ii vvfa ),'(' ii vvfa • The player’s utility when he tell the truth:

)()(

))()(()(),()),((

1ii

n

ii

jjiiiiiiiiii

vhav

avvhavvvpvvfvu

• The player’s utility when reports false valuation:

)()'(

))'(')(()'(),'()),'(('

1ii

n

ii

jjiiiiiiiiii

vhav

avvhavvvpvvfvu

VCG is IC- Cont.

n

ii

n

ii avav

11

)'()(

Since a maximizes social welfare,

We conclude that , and thus VCG mechanism is IC.

ii uu '

Aa '

Generalization of VCGDefinition: a function f is calledAffine maximizer:

: constants and .. weights, ' group subfor 1

AacwwAA

a

n

'1

21 ))(max(arg),...,,(

Aa

n

jjjan avwcvvvf

note: iff is called Maximal in Range

Aa 0 and 1... w,' 1 an cwAA

Affine Maximizer - Cont.

Claim: we can turn an Affine maximizer to be IC. We define:

i

aii

ijj

i

jiini

n

jjja

Aan

w

cvvfav

w

wvhvvp

avwcvvf

)),()(()(),...( .2

))((maxarg),...( .1

1

1'1

Affine maximizer is IC- Cont.

)())),(((1

)()),(()),((),(

),(1

),(

iivvf

n

jiij

i

j

i

iii

vvf

ijiij

i

jiiiiii

vhcvvfvw

ww

vhw

cvvfv

w

wvvfvvvu

ii

ii

proof: lets calculate the utility functions for vi (true) and vi’ (false):

)())),'(((1

)()),'(()),'((),'('

),'(1

),'(

iivvf

n

jiij

i

j

i

iii

vvf

ijiij

i

jiiiiii

vhcvvfvw

ww

vhw

cvvfv

w

wvvfvvvu

ii

ii

Affine maximizer is IC- Cont.

Since maximizes social

welfare,

We conclude that Affine maximizer is IC.

ii uu '

))),(( ),(1

ii vvf

n

jiij

i

j cvvfvw

w

Roberts Theorem

Roberts Theorem: if Vi can be any function, then there are no other mechanisms that are Incentive Compatible.

Definitions:

• A mechanism is Individually Rational (IR) if:

i.e. every player benefits from the game, no mater what the outcome is.

0)..()..(()..(:..

111

...11

ninini

nnvvpvvfvvvui

VVvv

• A mechanism has No Positive Transfers (NPT) if:

0)..(: 1 ni vvpi

}..,{ 1 nppf

Clarke Pivot Payments

Clarke Pivot Payments (CPP) determine the payments in VCG (they determine hi):

• = “what could have been the social welfare if player i didn’t participate”

ij

jAb

ii bvvh )(max)(

)( ii vh

VCG with CPP has NPT:

Using CPP the payments are:

0)),(()(max

)),(()(

iiij

jij

jAb

ijiijiii

vvfvbv

vvfvvhp

ij

)( :sum themaximazes b

bv j

))v,(v(:over sum themaximazes )v,f(v

i-i

n

1

i-i

i i fv

All the payments are positive -> the mechanism has no Positive Transfers!

VCG with CPP is IR:

Claim: and the mechanism is Individually rational.

0)..( then 0)(A ai if 1 nii vvuav

proof:

n

j ijj

Abnjni bvvvfvvvu

111 )(max))..(()..(

ij

jAb

bvb )(maxarg define slet'

0)())..(()..( 1 1

11

n

j

n

jjnjni bvvvfvvvu

0)(vremoved have we

j bSince f maximizessocial welfare

Example 1: Single Item Auction

We define a single item auction by:

In this case, f is reduced into:

else 0

wins"i")(

}i| wins{

awav

iA

ii

abvfNj

jAb

)(maxarg

iillij

ijj

i

vavp

avp

Niv

)(0

0)(0

: then, w valuemaximum thehas i if

: then, 0)(hLet

i

i

i

Example 1: cont.

The mechanism will give the item to the highest bidder, and the players will receive vi$

The mechanism is IC(no one will be better off by lying)

0)()(max

bid)highest second the(

w)()(max

: then, w valuemaximum thehas i if

: then, )(max)(hLet

si

i

i

iijll

ljlij

ijj

ijj

Abij

ji

vvavbvp

avbvp

Nibvv

Example 1: using CPP

Second Price Auction

Example 2: selling k items with CPPEach player wants only one item. There are k (identical) items for sale:

K highest bidders win and pay

:bids sort the sLet'

)(maxarg'largest v i

sk

iNi

iAb

vbvf

lj ljjj

Ab

ij ijknjj

Ab

n

avbv

vavbv

vvvv

0)()(maxp

)()(maxp

item get the bidsk highest The

...

k-ni

1k-ni

321

1 knv

Example 3: Bilateral TradeEach player wants only one item. There are k (identical) items for sale:

0 are prices the- tradeno ;

v valuehas v valuehass

}"","{"

b

s

iftradevvtradenovv

bbuyerseller

tradenotradeA

bsbs

bbs

bss

b

b

vyvyvxvvxv

vTradeAyvTradenoAx

)( ; 0)(0)( ; )(

v:":" v:":"

s

s

Example 3: Bilateral Trade

bbbis

ssssib

bibbis

ssissib

vyvvhvvvyvvhv

vhxvvhvvvhxvvhv

)()()(p0)()()(p

: trade)(y ealternativin

0)(0)()()(p)(0)()()(p

: trade)(no x ealternativin

i

i

i

i

Since Vs<Vb,The mechanism subsidizes the project

Example 4: public projectIn a public project like bridge, the players benefit from building. The problem is how to divide the cost of building.

jii

jii

ii

i

Cp

CCv

piCv

buildCv

A

buildnobuildA

j

j

i

v

vbut , If

0. If

. If

project. thefrom w valuehasplayer Each

C. ofcost build total

}"","{"

The mechanism subsidizes the project

Uniqueness Of Prices

Describe each type (valuation function) vi∊Vi

as |A| = m dimensional vector vi =(vi(a1), …, vi(am)). Note that Vi ⊂ R|A|

Uniqueness Of Prices: If for every i:Vi ⊂ R|A| is con, and mechanism

(f, p1, …, pn) is IC then:

Mechanism (f, p1’, …, pn’) is IC iff

For every i, vi there exists h(v-i) s.t.

pi’(vi, v-i) = pi(vi, v-i) + h(v-i)

Uniqueness Of Prices (cont.)

Trivial – given a certain v-i, player i can’t influence the prices in (f, p1’, …, pn’). That is, since prices are off by a constant h(v-i) compared to prices of (f, p1, …, pn), thus:

for every vi (“the truth”) and every other vi’:

vi(f(vi’, v-i)) – pi’(vi’, v-i)

= vi(f(vi’, v-i)) - pi(vi’, v-i) + h(v-i) (assumption)<= vi(f(vi, v-i)) - pi(vi, v-i) + h(v-i) (truthful)= vi(f(vi, v-i)) – pi’(vi, v-i) (assumption) (f, p1’, …, pn’) is truthful as well.

Uniqueness Of Prices (Lemma)

: First we prove the following lemma:A mechanism that maximizes social welfare is IC (1) For every i, v-i, every vi, vi’:

f(vi, v-i) = f(vi’, v-i) pi(vi, v-i) = pi(vi’, v-i)

Proof: Assume otherwise – so given i, v-i, vi, vi’ s.t. f(vi, v-i) = f(vi’, v-i) and

pi(vi, v-i) < pi(vi’, v-i) (w.l.o.g.):

-pi(vi, v-i) > -pi(vi’, v-i) (add vi’(f(vi’, v-

i)))

vi’(f(vi’, v-i))- pi(vi, v-i) > vi’(f(vi’, v-i))- pi(vi’, v-i) but f(vi, v-i) = f(vi’, v-i) - switch in left side:

Lemma (cont.)

vi’(f(vi, v-i))- pi(vi, v-i) > vi’(f(vi’, v-i)) - pi(vi’, v-i)

thus mechanism is not truthful (“if vi’ is the truth – better saying vi”)

Note that if combined with (1), we have:

(2) f(vi, v-i) ∊ argmaxa∊A

(vi(a)-Pa)

(Pa “price for player i if a is the result” is uniform for every vi that gives: f(vi,v-i) = a – along with condition (1))It’s (1), (2) iff IC, but it’s not needed for Uniqueness Of Prices.

Uniqueness Of Prices ( side)

We have Vi ⊂ R|A| connected, m=(f, p1, …, pn) and m’=(f, p1’, …, pn’) IC mechanisms. We fix i, v-i. We need to show for every vi, vi’∊Vi that pi’(vi, v-i) = pi(vi, v-i) + h(v-i) thus

pi’(vi, v-i) - pi(vi, v-i) = h(v-i) (fixed, for every vi) for every vi, vi’ :

pi’(vi,v-i) - pi(vi,v-i) = pi’(vi’,v-i) - pi(vi’,v-i))Define division of V to fragments:

Va = {vi∊Vi|f(vi, v-i) = a} – thus price for i on every vi∊Va is fixed at Pa in m and Pa’ in m’ (both truthful, according lemma)

side (cont)

So if vi,vi’∊Va we get:

pi’(vi,v-i) - pi(vi,v-i) = Pa’ – Pa =

pi’(vi’,v-i) - pi(vi’,v-i))

But if vi∊Va, vi’∊Vb for a != b:Definition: Va, Vb are “close” if:

Now, if a,b are close, for the via,vi

b that are epsiolon apart:

m is truthful, via∊Va thus:

via(a) – Pa >= vi

a(b) – Pb

Similarily: vib∊Vb vi

b(a) – Pa <= vib(b) –

Pb

|)()(|max||||0 1 cvcvvvvvvvba

Ac

baaiiii

bbi

ai

side (cont)

Combine them to get:

via(a) - vi

a(b) >= Pa – Pb >= vib(a) - vi

b(b)

Now Pa – Pb is caught in a sandwich, whose size is:

via(a) - vi

a(b) – (vib(a) - vi

b(b))

= (via(a) - vi

b(a)) + (vib(b) - vi

a(b))a,b are “close” so each red expression <= epsilon (by definition) vi

a(a) - via(b)

=

Pa – Pb = vib(a) - vi

b(b) We do the same for m’ and get:

P’a – P’b = vib(a) - vi

b(b) = Pa – Pb

side (cont)

that’s since vib(a) - vi

b(b) doesn’t change in m’ (valuation functions are the same) P’a – P’b = Pa – Pb P’a – Pa = P’b – Pb

Meaning, for vi∊Va, vi’∊Vb where a,b are closewe got the needed pi’(vi,v-i) - pi(vi,v-i) = P’a – Pa

= P’b – Pb = pi’(vi’,v-i) - pi(vi’,v-i)).Note that V is connectedand continuous, so between

every Va, Vb⊂Vi there must be

chain a, a1, …, am, b close in couples

Uniqueness Of Prices conclusion

P’a – Pa = P’a1– Pa1 ’ = … = P’am

– Pam = P’b – Pb We get the needed result:for each vi, vi’∊Vi:

pi’(vi,v-i) - pi(vi,v-i) = pi’(vi’,v-i) - pi(vi’,v-i))

for each vi∊Vi: pi’(vi, v-i) = pi(vi, v-i) + h(v-i)

We showed “ side” as well, and thus “Uniqueness Of Prices”

Weak Monotonicity

Definition: function f: (V1* …* Vn) A is WMON if:

Note that it’s not a complete mechanism, but just its alternative picking function.Also note that if a=b, it trivially holds as well.

)(')(')()()),'(),((:', bvavbvavvvfbavvfvvvi iiiiiiii iii

Saks Yu Theorem

(1) For m=(f, p1, …, pn) IC mechanism f is WMON.(2) If every Vi⊂R|A| is convex and given f WMON exists p1, …, pn Payments functions s.t. m=(f, p1, …, pn) is IC(alternatively f is “implementable”)

Proof for (1): assume otherwise, thus existsf(vi, v-i) = a != b = f(vi’, v-i) s.t.

vi(a) - vi(b) < vi‘(a) - vi‘(b)

Saks Yu Theorem (cont.)

but f is IC, so Uniqueness of prices:vi(a)-Pa>=vi(b)-Pb as well as vi‘(a)-Pa<=vi‘(b)-Pb Add inequations: vi(a)-Pa+ vi‘(b)-Pb >=vi(b)-Pb+vi‘(a)-Pa

vi(a) + vi‘(b) >=vi(b)+vi‘(a)

vi(a) - vi(b) >=vi‘(a) - vi‘(b) – contradiction. f is WMON

The (2) proof of Saks Yu will be skipped for now.

Weak Monotonicity (examples)

One Item Auction:Under the assumptions that non zero value for player i exists only if chosen alternative is that it gets the item.Under m players auction Vi⊂Rm but non zero value exists only on the axis of “player i won” – so Vi is a segment from (0,…,0) to the direction of axis i.Note that Saks Yu (2) applies as every Vi

is convex f is implementable (e.g. VCG)

WMON (One Item Auction)

For example with 2 playersV1, V2⊂R2 looks like that:

If we fix v-1 = v2 and observe v1 on its possible axis, then according to WMON, if there are 2 possible outcomes (1 wins (a) and 2 wins (b)) then if f(v1, v2) = a,

f(v1’, v2) = b v1(a) – v1(b) >= v1‘(a) – v1‘(b)

but for every v∊V1 v(b) = 0

v1(a) >= v1‘(a)thus if 1 won, its valuation is greater than

WMON (One Item Auction cont)

any possible valuationwhich led to b (1 didn’t win), so there has tobe some threshold in V1

over which all vi emit

f(vi) = a, and under which

f(vi) = b.

Obviousely, the threshold is v2(b) – valuation of the item by the other player.

WMON (public project example)

Another example: Public project. For player i, fix v-i has again only 2 alternatives – project constructed – a, and not constructed – b. Again valuation for b is zero, leaving with similar layout – out of R2 space Vi occupies the positive axis of alternative a.Again, if the 2 alternatives are possible, we’ll get the same pattern with the threshold as the WMON forced on the one item auction previousely.

Cyclic Monotonicity

Definition: function f: (V1* …* Vn) A is Cyclic Monotone (CMON) if:

Note that when limited only to k=2, it’s exactly the WMON condition.

0))1()((...))()(())()((

:);,(:

|)},(),...,,({:|,...,

32212211

11

avavavavavav

thenvvfawhere

kvvfvvfvvkvi

kk

j

kk

ikiiiii

iij

iiiiiii

CMON (Alternative definition)

An alternative way to represent CMON is by fixing some v-i, and defining weighted, complete directed graph G=(Vi,E), W: E R. Each vertex vi∊Vi has also its corresponding f value – f(vi, v-i).

Now define W(vk,vj) (edge directed from vk to vj), where f(vk, v-i) = a, f(vj, v-i) = b: W(vk,vj) = vj (b)-vj(a)

Intuition: Edge (vk,vj), if the truth is vj

how much damage will be caused if you’ll say you’re vk

CMON (Alternative def. cont.)

Now, CMON condition in graphrepresentationfor each i of fis that the graphdoesn’t containany directed negative cyclesin terms of summing the cycle’s edges.

Rochet Theorem

Given f: (V1* …* Vn) A:f is CMON iff f is implementable ( = there exists payment functions p1, …, pn s.t. m=(f, p1, …, pn) yields IC mechanism)

Proof: : We’ll build explicitly the payment functions p1, …, pn based on CMON f. For pi We’ll pick a some vi∊Vi, and based on it for every vi’∊Vi: pi(vi’, v-i) will be the shortest path on the weighted (f, v-i) graph from vi to vi’.

Rochet Theorem ( side proof)

Shortest paths on the graph is well defined since f is CMON. Shortest paths also has the triangle inequality over the distances as follows (for every vi’’, vi’ ∊Vi):

dist(vi, vi’’) <= dist(vi, vi’) + w(vi’, vi’’)

[Recall dist(vi, x) is pi(x, v-i) and w(vi’, vi’’) is vi’’(f(vi’’ ,v-i)) - vi’’(f(vi’ ,v-i))]

pi(vi’’, v-i) <= pi(vi’, v-i) + vi’’(f(vi’’ ,v-i)) – vi’’(f(vi’ ,v-i)) (move sides)

vi’’(f(vi’ ,v-i)) - pi(vi’, v-i) <= vi’’(f(vi’’ ,v-

i)) – pi(vi’’, v-i) f is IC

Rochet Theorem ( side proof)

Now, let f be implementable, assume in contradiction that the graph contains negative cycle:Thus we get:(vj(b)-vj(a)) + (vk(c)-vk(b)) +

(vl(d)-vl(c)) + (vi(a)-vi(d)) < 0

side proof (cont.)

But f is implementable exists m=(f, p1, …, pn) IC mechanism.

Uniqueness of prices – denote pi(vi, v-

i), where f(vi, v-i)=a to be Pa

IC:• vj(b)-Pb>=vj(a)-Pa vj(b)-vj(a) >=

Pb-Pa

• vk(c)-Pc>=vk(b)-Pb vk(c)-vk(b)>= Pc-Pb

• vl(d)-Pd>=vl(c)-Pc vl(d)-vl(c)>= Pd-Pc

• vi(a)-Pa>=vi(d)-Pd vi(a)-vi(d)>= Pa-Pd

side proof (cont.)

Now we sum the columns:(vj(b)-vj(a)) + (vk(c)-vk(b)) + (vl(d)-vl(c)) + (vi(a)-vi(d)) >=

Pb - Pa + Pc - Pb + Pd - Pc + Pa – Pd = 0

Thus we a, b, c, d is not a negative cycle contradiction to the existence of negative cycles f is CMON.