Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Voting and Mechanism Design
Voting and Mechanism Design
Jose M Vidal
Department of Computer Science and Engineering, University of South Carolina
March 26, 2010
Abstract
Voting, Mechanism design, and distributed algorithmicsmechanism design. Chapter 8.
Voting and Mechanism Design
Voting
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Voting
Why Vote?
Common way of aggregating agents’ preferences.
Well understood.
But, centralized.
Voting and Mechanism Design
Voting
The Problem
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Voting
The Problem
The Voting Problem
MilkWineBeer
WineBeerMilk
BeerWineMilk
Beer Wine Milk
Plurality
5 4 6
Runoff
5,9 4 6,6
Pairwise
1 2 0
Voting and Mechanism Design
Voting
The Problem
The Voting Problem
MilkWineBeer
WineBeerMilk
BeerWineMilk
Beer Wine Milk
Plurality 5 4 6Runoff
5,9 4 6,6
Pairwise
1 2 0
Voting and Mechanism Design
Voting
The Problem
The Voting Problem
MilkWineBeer
WineBeerMilk
BeerWineMilk
Beer Wine Milk
Plurality 5 4 6Runoff 5,9 4 6,6
Pairwise
1 2 0
Voting and Mechanism Design
Voting
The Problem
The Voting Problem
MilkWineBeer
WineBeerMilk
BeerWineMilk
Beer Wine Milk
Plurality 5 4 6Runoff 5,9 4 6,6
Pairwise 1 2 0
Voting and Mechanism Design
Voting
Solutions
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Voting
Solutions
Symmetry
Reflectional symmetry: If one agent prefers A to B andanother one prefers B to A then their votes should cancel eachother out.
Rotational symmetry: If one agent prefers A,B,C and anotherone prefers B,C,A and another one prefers C,A,B then theirvotes should cancel out.
Plurality vote violates reflectional symmetry, so does runoffvoting.
Pairwise comparison violates rotational symmetry.
Voting and Mechanism Design
Voting
Solutions
Symmetry
Reflectional symmetry: If one agent prefers A to B andanother one prefers B to A then their votes should cancel eachother out.
Rotational symmetry: If one agent prefers A,B,C and anotherone prefers B,C,A and another one prefers C,A,B then theirvotes should cancel out.
Plurality vote violates reflectional symmetry, so does runoffvoting.
Pairwise comparison violates rotational symmetry.
Voting and Mechanism Design
Voting
Solutions
Borda Count
Jean-Charles deBorda. 1733–1799.
1 With x candidates, each agent awards xto points to his first choice, x − 1 pointsto his second choice, and so on.
2 The candidate with the most points wins.
Borda satisfies both reflectional and rotationalsymmetry.
Voting and Mechanism Design
Voting
Solutions
Formalization
There is a set of A agents, and O outcomes.
Each agent i has a preference function >i over the set ofoutcomes.
Let >∗ be the global set of social preferences. That is, whatwe want the outcome to be.
Voting and Mechanism Design
Voting
Solutions
Definition (Desirable Voting Outcome Conditions)
1 >∗ exists for all possible inputs >i
2 >∗ exists for every pair of outcomes
3 >∗ is asymmetric and transitive over the set of outcomes
4 >∗ should be Pareto efficient.
5 The scheme used to arrive at >∗ should be independent ofirrelevant alternatives.
6 No agent should be a dictator in the sense that >∗ is alwaysthe same as >i , no matter what the other >j are.
Voting and Mechanism Design
Voting
Solutions
Definition (Desirable Voting Outcome Conditions)
1 >∗ exists for all possible inputs >i
2 >∗ exists for every pair of outcomes
3 >∗ is asymmetric and transitive over the set of outcomes
4 >∗ should be Pareto efficient.
5 The scheme used to arrive at >∗ should be independent ofirrelevant alternatives.
6 No agent should be a dictator in the sense that >∗ is alwaysthe same as >i , no matter what the other >j are.
Voting and Mechanism Design
Voting
Solutions
Definition (Desirable Voting Outcome Conditions)
1 >∗ exists for all possible inputs >i
2 >∗ exists for every pair of outcomes
3 >∗ is asymmetric and transitive over the set of outcomes
4 >∗ should be Pareto efficient.
5 The scheme used to arrive at >∗ should be independent ofirrelevant alternatives.
6 No agent should be a dictator in the sense that >∗ is alwaysthe same as >i , no matter what the other >j are.
Voting and Mechanism Design
Voting
Solutions
Definition (Desirable Voting Outcome Conditions)
1 >∗ exists for all possible inputs >i
2 >∗ exists for every pair of outcomes
3 >∗ is asymmetric and transitive over the set of outcomes
4 >∗ should be Pareto efficient.
5 The scheme used to arrive at >∗ should be independent ofirrelevant alternatives.
6 No agent should be a dictator in the sense that >∗ is alwaysthe same as >i , no matter what the other >j are.
Voting and Mechanism Design
Voting
Solutions
Definition (Desirable Voting Outcome Conditions)
1 >∗ exists for all possible inputs >i
2 >∗ exists for every pair of outcomes
3 >∗ is asymmetric and transitive over the set of outcomes
4 >∗ should be Pareto efficient.
5 The scheme used to arrive at >∗ should be independent ofirrelevant alternatives.
6 No agent should be a dictator in the sense that >∗ is alwaysthe same as >i , no matter what the other >j are.
Voting and Mechanism Design
Voting
Solutions
Definition (Desirable Voting Outcome Conditions)
1 >∗ exists for all possible inputs >i
2 >∗ exists for every pair of outcomes
3 >∗ is asymmetric and transitive over the set of outcomes
4 >∗ should be Pareto efficient.
5 The scheme used to arrive at >∗ should be independent ofirrelevant alternatives.
6 No agent should be a dictator in the sense that >∗ is alwaysthe same as >i , no matter what the other >j are.
Voting and Mechanism Design
Voting
Solutions
Kenneth Arrow
Theorem (Arrow’s Impossibility)
There is no social choice rule that satisfies thesix conditions.
Plurality voting relaxes 3 and 5. Adding athird candidate can wreak havoc.
Pairwise relaxes 5.
Borda violates 5.
Voting and Mechanism Design
Voting
Solutions
Kenneth Arrow
Theorem (Arrow’s Impossibility)
There is no social choice rule that satisfies thesix conditions.
Plurality voting relaxes 3 and 5. Adding athird candidate can wreak havoc.
Pairwise relaxes 5.
Borda violates 5.
Voting and Mechanism Design
Voting
Solutions
Borda Example
1 a > b > c > d
2 b > c > d > a
3 c > d > a > b
4 a > b > c > d
5 b > c > d > a
6 c > d > a > b
7 a > b > c > d
1 c gets 20 points
2 b gets 19 points
3 a gets 18 points
4 d gets 13 points
Voting and Mechanism Design
Voting
Solutions
Borda Example
1 a > b > c > d
2 b > c > d > a
3 c > d > a > b
4 a > b > c > d
5 b > c > d > a
6 c > d > a > b
7 a > b > c > d
1 c gets 20 points
2 b gets 19 points
3 a gets 18 points
4 d gets 13 points
Voting and Mechanism Design
Voting
Solutions
Borda Example
Let’s get rid of d .
1 a > b > c > d
2 b > c > d > a
3 c > d > a > b
4 a > b > c > d
5 b > c > d > a
6 c > d > a > b
7 a > b > c > d
1 a gets 15 points
2 b gets 14 points
3 c gets 13 points
Voting and Mechanism Design
Voting
Solutions
Borda Example
Let’s get rid of d .
1 a > b > c
2 b > c > a
3 c > a > b
4 a > b > c
5 b > c > a
6 c > a > b
7 a > b > c
1 a gets 15 points
2 b gets 14 points
3 c gets 13 points
Voting and Mechanism Design
Voting
Solutions
Borda Example
Let’s get rid of d .
1 a > b > c
2 b > c > a
3 c > a > b
4 a > b > c
5 b > c > a
6 c > a > b
7 a > b > c
1 a gets 15 points
2 b gets 14 points
3 c gets 13 points
Voting and Mechanism Design
Voting
Summary
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Voting
Summary
Voting Summary
1 Use Borda count whenever possible.
2 Practically, Borda requires calculating all preferences: oftencomputationally hard.
Voting and Mechanism Design
Centralized Mechanism Design
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Painting the House
Name Wants house painted?
Alice YesBob NoCaroline YesDonald YesEmily Yes
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Formal Definition
Each agent i has a type θi ∈ Θi which is private.
θ = {θ1, θ2, . . . , θA}.The protocol results in some outcome o ∈ O.
Each agent i gets a value vi (o, θi ) for outcome o.
The social choice function f (θ) tells us the outcome we wantto achieve. For example,
f (θ) = arg maxo∈O
n∑i=1
vi (o, θi ) (1)
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Formal Definition
Each agent i has a type θi ∈ Θi which is private.
θ = {θ1, θ2, . . . , θA}.
The protocol results in some outcome o ∈ O.
Each agent i gets a value vi (o, θi ) for outcome o.
The social choice function f (θ) tells us the outcome we wantto achieve. For example,
f (θ) = arg maxo∈O
n∑i=1
vi (o, θi ) (1)
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Formal Definition
Each agent i has a type θi ∈ Θi which is private.
θ = {θ1, θ2, . . . , θA}.The protocol results in some outcome o ∈ O.
Each agent i gets a value vi (o, θi ) for outcome o.
The social choice function f (θ) tells us the outcome we wantto achieve. For example,
f (θ) = arg maxo∈O
n∑i=1
vi (o, θi ) (1)
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Formal Definition
Each agent i has a type θi ∈ Θi which is private.
θ = {θ1, θ2, . . . , θA}.The protocol results in some outcome o ∈ O.
Each agent i gets a value vi (o, θi ) for outcome o.
The social choice function f (θ) tells us the outcome we wantto achieve. For example,
f (θ) = arg maxo∈O
n∑i=1
vi (o, θi ) (1)
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Formal Definition
Each agent i has a type θi ∈ Θi which is private.
θ = {θ1, θ2, . . . , θA}.The protocol results in some outcome o ∈ O.
Each agent i gets a value vi (o, θi ) for outcome o.
The social choice function f (θ) tells us the outcome we wantto achieve. For example,
f (θ) = arg maxo∈O
n∑i=1
vi (o, θi ) (1)
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Painting the House
Name Type (θi ) vi (Paint, θi ) vi (NoPaint, θi )
Alice WantPaint 10 0Bob DontNeedPaint 0 0Caroline WantPaint 10 0Donald WantPaint 10 0Emily WantPaint 10 0
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Painting the House
Name Type (θi ) vi (Paint, θi ) vi (NoPaint, θi )
Alice WantPaint 10 0Bob DontNeedPaint 0 0Caroline WantPaint 10 0Donald WantPaint 10 0Emily WantPaint 10 0
Try this: Everyone votes Y/N. If majority votes Y then painthouse. All pay 1/5 of cost (4 each).
Bob must pay for a paint job he didn’t want.
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Painting the House
Name Type (θi ) vi (Paint, θi ) vi (NoPaint, θi )
Alice WantPaint 10 0Bob DontNeedPaint 0 0Caroline WantPaint 10 0Donald WantPaint 10 0Emily WantPaint 10 0
Try this: Everyone votes Y/N. If majority votes Y then painthouse. All pay 1/5 of cost (4 each).
Bob must pay for a paint job he didn’t want.
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Painting the House
Name Type (θi ) vi (Paint, θi ) vi (NoPaint, θi )
Alice WantPaint 10 0Bob DontNeedPaint 0 0Caroline WantPaint 10 0Donald WantPaint 10 0Emily WantPaint 10 0
Try this: Everyone votes Y/N. Split cost among those whovoted Y.
There is an incentive for all but Bob to lie.
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Painting the House
Name Type (θi ) vi (Paint, θi ) vi (NoPaint, θi )
Alice WantPaint 10 0Bob DontNeedPaint 0 0Caroline WantPaint 10 0Donald WantPaint 10 0Emily WantPaint 10 0
Try this: Everyone votes Y/N. Split cost among those whovoted Y.
There is an incentive for all but Bob to lie.
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Definition (g Implements f )
A mechanism g : S1 × · · · × SA → O implements social choicefunction f (·) if there is an equilibrium strategy profile(S∗1 (·), . . . ,S∗A(·)) of the game induced by g such thatg(S∗1 (θ1), . . . ,S∗A(θA)) = f (θ1, . . . , θA) for all θ ∈ Θ.
Where we let Si (θi ) be agent i ’s strategy given that it is of type θi .
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Definition (Dominant Strategy Equilibrium)
A strategy profile (S∗1 (·), . . . ,S∗A(·)) of the game induced by g is adominant strategy equilibrium if for all i and all θi ,
vi (g(s∗i (θi ), s−i ), θi ) ≥ vi (g(s ′i , s−i ), θi )
for all s ′i ∈ Si and all s−i ∈ S−i .
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Definition (g Implements f )
A mechanism g : S1 × · · · × SA → O implements social choicefunction f (·) in dominant strategies if there is a dominant strategyequilibrium strategy profile (S∗1 (·), . . . ,S∗A(·)) of the game inducedby g such that g(S∗1 (θ1), . . . ,S∗A(θA)) = f (θ1, . . . , θA) for allθ ∈ Θ.
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Definition (Strategy-Proof)
The social choice function f (·) is truthfully implementable indominant strategies (or strategy-proof) if s∗i (θi ) = θi (for allθi ∈ Θi and all i) is a dominant strategy equilibrium of the directrevelation mechanism f (·). That is, if for all i and all θi ∈ Θi ,
vi (f (θi , θ−i ), θi ) ≥ vi (f (θi , θ−i ), θi )
for all θi ∈ Θi and all θ−i ∈ Θ−i .
Voting and Mechanism Design
Centralized Mechanism Design
Problem Description
Theorem (Revelation Principle)
If there exists a mechanism g that implements the social choicefunction f in dominant strategies then f is truthfullyimplementable in dominant strategies.
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Selling Example
θi ∈ <: types are the valuations.
o ∈ {1, . . . , n}: index of agent who gets the item.
vi (o, θi ) = θi if o = i , and 0 otherwise.
f (θ) = arg maxi (θi )
Each agent gets a pi (o) so that ui (o, θi ) = vi (o, θi ) + pi (o).
Set p(o) such that the agent who wins must pay a tax equal to thesecond highest valuation. No one else pays/gets anything.
ui (o, θi ) =
{θi −maxj 6=i θj if o = i
0 otherwise.
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Selling Example
θi ∈ <: types are the valuations.
o ∈ {1, . . . , n}: index of agent who gets the item.
vi (o, θi ) = θi if o = i , and 0 otherwise.
f (θ) = arg maxi (θi )
Each agent gets a pi (o) so that ui (o, θi ) = vi (o, θi ) + pi (o).
Set p(o) such that the agent who wins must pay a tax equal to thesecond highest valuation. No one else pays/gets anything.
ui (o, θi ) =
{θi −maxj 6=i θj if o = i
0 otherwise.
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Selling Example
θi ∈ <: types are the valuations.
o ∈ {1, . . . , n}: index of agent who gets the item.
vi (o, θi ) = θi if o = i , and 0 otherwise.
f (θ) = arg maxi (θi )
Each agent gets a pi (o) so that ui (o, θi ) = vi (o, θi ) + pi (o).
Set p(o) such that the agent who wins must pay a tax equal to thesecond highest valuation. No one else pays/gets anything.
ui (o, θi ) =
{θi −maxj 6=i θj if o = i
0 otherwise.
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Selling Example
θi ∈ <: types are the valuations.
o ∈ {1, . . . , n}: index of agent who gets the item.
vi (o, θi ) = θi if o = i , and 0 otherwise.
f (θ) = arg maxi (θi )
Each agent gets a pi (o) so that ui (o, θi ) = vi (o, θi ) + pi (o).
Set p(o) such that the agent who wins must pay a tax equal to thesecond highest valuation. No one else pays/gets anything.
ui (o, θi ) =
{θi −maxj 6=i θj if o = i
0 otherwise.
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Selling Example
θi ∈ <: types are the valuations.
o ∈ {1, . . . , n}: index of agent who gets the item.
vi (o, θi ) = θi if o = i , and 0 otherwise.
f (θ) = arg maxi (θi )
Each agent gets a pi (o) so that ui (o, θi ) = vi (o, θi ) + pi (o).
Set p(o) such that the agent who wins must pay a tax equal to thesecond highest valuation. No one else pays/gets anything.
ui (o, θi ) =
{θi −maxj 6=i θj if o = i
0 otherwise.
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Selling Example
θi ∈ <: types are the valuations.
o ∈ {1, . . . , n}: index of agent who gets the item.
vi (o, θi ) = θi if o = i , and 0 otherwise.
f (θ) = arg maxi (θi )
Each agent gets a pi (o) so that ui (o, θi ) = vi (o, θi ) + pi (o).
Set p(o) such that the agent who wins must pay a tax equal to thesecond highest valuation. No one else pays/gets anything.
ui (o, θi ) =
{θi −maxj 6=i θj if o = i
0 otherwise.
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Truth-Telling is Dominant in Vickrey Payments Example.
1 Let bi (θi ) be i ’s bid given that his true valuation is θi .
2 Let b′ = maxj 6=i bj(θj) be the highest bid amongst the rest.
3 If b′ < θi then any bid bi (θi ) > b′ is optimal since
ui (i , θi ) = θi − b′ > 0
4 If b′ > θi then any bid bi (θi ) < b′ is optimal since
ui (i , θi ) = 0
5 Since we have that if b′ < θi then i should bid > b′ and ifb′ > θi then i should bid < b′, and we don’t know b′ then ishould bid θi .
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Truth-Telling is Dominant in Vickrey Payments Example.
1 Let bi (θi ) be i ’s bid given that his true valuation is θi .
2 Let b′ = maxj 6=i bj(θj) be the highest bid amongst the rest.
3 If b′ < θi then any bid bi (θi ) > b′ is optimal since
ui (i , θi ) = θi − b′ > 0
4 If b′ > θi then any bid bi (θi ) < b′ is optimal since
ui (i , θi ) = 0
5 Since we have that if b′ < θi then i should bid > b′ and ifb′ > θi then i should bid < b′, and we don’t know b′ then ishould bid θi .
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Truth-Telling is Dominant in Vickrey Payments Example.
1 Let bi (θi ) be i ’s bid given that his true valuation is θi .
2 Let b′ = maxj 6=i bj(θj) be the highest bid amongst the rest.
3 If b′ < θi then any bid bi (θi ) > b′ is optimal since
ui (i , θi ) = θi − b′ > 0
4 If b′ > θi then any bid bi (θi ) < b′ is optimal since
ui (i , θi ) = 0
5 Since we have that if b′ < θi then i should bid > b′ and ifb′ > θi then i should bid < b′, and we don’t know b′ then ishould bid θi .
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Truth-Telling is Dominant in Vickrey Payments Example.
1 Let bi (θi ) be i ’s bid given that his true valuation is θi .
2 Let b′ = maxj 6=i bj(θj) be the highest bid amongst the rest.
3 If b′ < θi then any bid bi (θi ) > b′ is optimal since
ui (i , θi ) = θi − b′ > 0
4 If b′ > θi then any bid bi (θi ) < b′ is optimal since
ui (i , θi ) = 0
5 Since we have that if b′ < θi then i should bid > b′ and ifb′ > θi then i should bid < b′, and we don’t know b′ then ishould bid θi .
Voting and Mechanism Design
Centralized Mechanism Design
An Example Problem and Solution
Truth-Telling is Dominant in Vickrey Payments Example.
1 Let bi (θi ) be i ’s bid given that his true valuation is θi .
2 Let b′ = maxj 6=i bj(θj) be the highest bid amongst the rest.
3 If b′ < θi then any bid bi (θi ) > b′ is optimal since
ui (i , θi ) = θi − b′ > 0
4 If b′ > θi then any bid bi (θi ) < b′ is optimal since
ui (i , θi ) = 0
5 Since we have that if b′ < θi then i should bid > b′ and ifb′ > θi then i should bid < b′, and we don’t know b′ then ishould bid θi .
Voting and Mechanism Design
Centralized Mechanism Design
The Groves-Clarke Mechanism
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Centralized Mechanism Design
The Groves-Clarke Mechanism
Theorem (Groves-Clarke Mechanism)
If
f (θ) = arg maxo∈O
n∑i=1
vi (o, θi )
then calculating the outcome using
f (θ) = arg maxo∈O
n∑i=1
vi (o, θi )
(where θ are reported types) and giving the agents payments of
pi (θ) =∑j 6=i
vj(f (θ), θj)− hi (θ−i )
(where hi (θ−i ) is an arbitrary function) results in a strategy-proofmechanism.
Voting and Mechanism Design
Centralized Mechanism Design
The Groves-Clarke Mechanism
Groves-Clarke Payments for House Painting
Name vi (o, θ) vi (o, θ) +∑
j 6=i vj(θ)
Alice 10− 204 = 5
Bob 0− 0 = 0
Caroline 10− 204 = 5
Donald 10− 204 = 5
Emily 10− 204 = 5
Assuming all tell the truth.
Voting and Mechanism Design
Centralized Mechanism Design
The Groves-Clarke Mechanism
Groves-Clarke Payments for House Painting
Name vi (o, θ) vi (o, θ) +∑
j 6=i vj(θ)
Alice 10− 204 = 5 5 + 15 = 20
Bob 0− 0 = 0 0 + 20 = 20
Caroline 10− 204 = 5 5 + 15 = 20
Donald 10− 204 = 5 5 + 15 = 20
Emily 10− 204 = 5 5 + 15 = 20
Assuming all tell the truth.
Voting and Mechanism Design
Centralized Mechanism Design
The Groves-Clarke Mechanism
Groves-Clarke Payments for House Painting
Name vi (o, θ) vi (o, θ) +∑
j 6=i vj(θ)
Alice 0− 0 = 0 10 + (103 · 3) = 20
Bob 0− 0 = 0 0 + (103 · 3) = 10
Caroline 10− 203 = 10
3 10 + (103 · 2) = 10
Donald 10− 203 = 10
3 10 + (103 · 2) = 10
Emily 10− 203 = 10
3 10 + (103 · 2) = 10
Alice lies.
Voting and Mechanism Design
Centralized Mechanism Design
The Vickrey-Clarke-Groves Mechanism
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Centralized Mechanism Design
The Vickrey-Clarke-Groves Mechanism
Theorem (Vickrey-Clarke-Groves (VCG) Mechanism)
If
f (θ) = arg maxo∈O
n∑i=1
vi (o, θi )
then calculating the outcome using
f (θ) = arg maxo∈O
n∑i=1
vi (o, θi )
(where θ are reported types) and giving the agents payments of
pi (θ) =∑j 6=i
vj(f (θ−i ), θj)−∑j 6=i
vj(f (θ), θj)
(where hi (θ−i ) is an arbitrary function) results in a strategy-proofmechanism.
Voting and Mechanism Design
Centralized Mechanism Design
The Vickrey-Clarke-Groves Mechanism
VCG Payments for House Painting
Name vi (o, θ)∑
j 6=i vj(f (θ−i ), θj)∑
j 6=i vj(·)−∑
j 6=i vj(·)
Alice 10− 204 = 5 (10− 20
3 ) · 3 = 10 10− 15 = 5
Bob 0− 0 = 0 (10− 204 ) · 4 = 20 20− 20 = 0
Caroline 10− 204 = 5 (10− 20
3 ) · 3 = 10 10− 15 = 5
Donald 10− 204 = 5 (10− 20
3 ) · 3 = 10 10− 15 = 5
Emily 10− 204 = 5 (10− 20
3 ) · 3 = 10 10− 15 = 5
Alice tells the truth.
Voting and Mechanism Design
Distributed Mechanism Design
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Distributed Mechanism Design
Distributed Algorithmic Mechanism Design
Algorithmic mechanism design: make mechanism polynomialtime
Distributed algorithmic mechanism design: make mechanismdistributed
Voting and Mechanism Design
Distributed Mechanism Design
Inter-Domain Routing Problem
AcA = 5
Xcx = 2
Zcz = 4 D
cd = 1
Bcb = 2
Ycy = 3
Voting and Mechanism Design
Conclusion
1 VotingThe ProblemSolutionsSummary
2 Centralized Mechanism DesignProblem DescriptionAn Example Problem and SolutionThe Groves-Clarke MechanismThe Vickrey-Clarke-Groves Mechanism
3 Distributed Mechanism Design
4 Conclusion
Voting and Mechanism Design
Conclusion
Conclusion
GC and VCG payment equations are useful ready-madesolutions to many problems.
But, we still need more research into how to distribute themechanisms and how to make their calculationcomputationally tractable.