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

VCG

Jan 18, 2016

Download

Documents

fayola

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
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: VCG

VCG

Computational game theoryFall 2010

by Inna Kalp and Yosef Heskia

Page 2: VCG

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:

Page 3: VCG

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:

Page 4: VCG

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

Page 5: VCG

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

Page 6: VCG

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

Page 7: VCG

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

VCG mechanism. Cont.

Page 8: VCG

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

Page 9: VCG

• 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

Page 10: VCG

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 '

Page 11: VCG

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

Page 12: VCG

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

Page 13: VCG

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

Page 14: VCG

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

Page 15: VCG

Roberts Theorem

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

Page 16: VCG

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

Page 17: VCG

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

Page 18: VCG

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!

Page 19: VCG

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

Page 20: VCG

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

Page 21: VCG

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)

Page 22: VCG

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

Page 23: VCG

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

Page 24: VCG

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

Page 25: VCG

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

Page 26: VCG

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

Page 27: VCG

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)

Page 28: VCG

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.

Page 29: VCG

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:

Page 30: VCG

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.

Page 31: VCG

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)

Page 32: VCG

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

Page 33: VCG

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

Page 34: VCG

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

Page 35: VCG

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”

Page 36: VCG

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

Page 37: VCG

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)

Page 38: VCG

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.

Page 39: VCG

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)

Page 40: 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

Page 41: VCG

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.

Page 42: VCG

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.

Page 43: VCG

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

Page 44: VCG

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

Page 45: VCG

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.

Page 46: VCG

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’.

Page 47: VCG

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

Page 48: VCG

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

Page 49: VCG

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

Page 50: VCG

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.