Lecture 10
CS905: Game Theory
VCG Procedures

Scribed By: Mayank Bansal


Review of the Previous Lecture

In the previous lecture, we discussed the various means/methods of carrying out a Single Item Auction. We will now discuss how a Single Item Auction can be classified.

A Single-Item Auction can be classified into two types namely Sealed-Bid and Progressive depending upon the way the auction is conducted. In the Sealed-Bid Auction, the auctioneer invites sealed bids from the bidders, while in the Progressive Auction, the auction is carried out in the open where the bidders are asked to bid before everybody else. The Sealed Bid Auction can further be classified into two types: the First Price and the Second Price auctions. In the First Price auction, the item is given to the highest bidder at his own bid-value while in the Second Price auction, the item is given again to the higest bidder but at the bid value of the second highest bidder. The Progressive Auction can also be classified into two types namely the Ascending English Open-Cry Auction and the Descending Dutch Auction. In the Ascending English Open-Cry auction, the bidding starts at zero price and the bidders keep on out-bidding each other by increasing the bid value (the bid keeps on increasing) till only one bidder is left who gets the item. On the contrary, in the Descending Dutch auction, the bidding starts at a particularly high value set by the auctioneer. The auctioneer keeps on decreasing the price of the item till some bidder raises hand and agrees to buy the item at that price. The classification, has been depicted below:


There are two models under which a single-item auction can be considered viz. private known value model and common value model. In the private known value model the value that a bidder attaches to an item is independent of what values other bidders assign. In the common value model, the value attached by a bidder also depends upon what values other bidders assign. In all auction procedures, we will assume that bidders have private known values.

Let us now compare the various Bidding Mechanisms:

Relative Comparisons

Consider a First Price Auction of a single item with $N$ bidders with private known values uniformly distributed in [0,1]. In this case, $b = (\frac{N-1}{N})v$ is the unique Nash-Equilibrium. The expected revenue in this case is $\frac{N-1}{N+1}$.

Now, consider a Second Price Auction. Here the highest bidder gets the item at the price equal to the second highest bidder's value. Also, $b_i = v_i$ (i.e. bidding true value) is a dominant strategy in the Second Price (and the English Open-Cry) Auction(s). The expected revenue, if $u\in U(0,1)$ is $\frac{N-1}{N+1}$. Note that both give the same expected revenue. Revenue equivalence holds for the general case as well.

The Descending Dutch Auction is similar to the First Price Auction. Here also the strategy is to choose a bid value $b$ and raise hand when the price, $P$ reaches $b$.

VCG Procedures

Consider an auction carried out by the clearing house with $m$ commodities and $n$ players. In the last lecture, we discussed that a bidder can gain advantage if he mis-reports his utility function to the clearing house. VCG procedures make sure that traders report their true uitility functions. Let us now discuss, how the clearing house assigns items and decides prices, to make sure that the final allocation is efficient.

Let $q_i^j$ represent the quantity of commodity $i$ with the player $j$. $u_i(\underline{q})$ represents the utility function of player $i$ and is assumed to be quasi-linear in commodity $m$ (money), i.e.

\begin{displaymath}\forall q,i,r\\ u_i(\underline{q}+r\underline{e}_m) = u_i(\underline{q}) + r \end{displaymath}

The procedure is the following:

The clearing house invites the players to report their utility functions. Let $r_i()$ be the utility function that player $i$ reports which need not be equal to $u_i()$.

Clearing house calculates,

\begin{displaymath}\omega^{\star} = (\underline{q}^{1\star},\underline{q}^{2\star},\ldots,\underline{q}^{N\star}) \end{displaymath}


\begin{displaymath}{\sum_{i=1}^{N}r_i(\underline{q}^{i})} \end{displaymath}

is maximized.

Clearing house calculates,
$P_i(\omega)$ $\forall i$ as follows:

\begin{displaymath}P_i(\omega) = \sum_{j \neq i}r_j(\omega)\end{displaymath}

Step 4:
Let $r_{-i}()$ represent $(r_1(),r_2(),\ldots,r_{i-1}(),r_{i+1}(),\ldots,r_n())$. Clearing house chooses $\forall i$,

\begin{displaymath}G_i(): r_{-i}() \to R \end{displaymath}

Clearing house allocates according to $\omega^{\star}$ and $r_{-i}()$.
Player $i$ pays:

\begin{displaymath}G_i(r_{-i}()) - P_i(\omega^{\star}) \end{displaymath}

Lets look at the players' behaviour now. Player $i$ needs to:

\textsf{Maximize}\;\; & u_i(\omega^{\star})...
... \underbrace{G_i(r_{-i}())}_{Independent\,of\,r_i()}\end{array}\end{displaymath}

Since $h_i(\omega^{\star})$ is independent of $r_i()$ and only depends on the value of $\omega^{\star}$, $h_i()$ is maximized only if $\omega^{\star}$ maximizes $u_i() + \sum{r_j()}$, which happens only if $u_i() = r_i()$.

So, we conclude that if the clearing house follows the above VCG procedure, then each player's payoff is maximized when his/her reported utility is equal to his/her true utility.

One choice of $G_i()$ could be,

\begin{displaymath}\max_{\omega}\sum_{j\neq i}r_j(\omega)\end{displaymath}

Now we see how Second Price, single item auctions can be modelled as a special case of VCG procedures.

Second Price Auctions

Let us consider an auction with only one item and $N$ bidders. Let $x_i = 1$ mean that bidder $i$ gets the item. Thus, an allocation $\omega$ would be,

\begin{displaymath}\omega = \underline{x}\end{displaymath}


\begin{displaymath}x_i \in \{0,1\}\end{displaymath}


\begin{displaymath}\sum_{i=0}^{N}x_i = 1\end{displaymath}

The utility function of player $i$ is a single number $u_i$. If the value attached to the item by the bidder is $v_i$ then the utility is given by,

\begin{displaymath}u_i(\underline{x}) = v_i x_i\end{displaymath}

Let bidder $i$ bid a value $b_i$, then the reported utility is given by,

\begin{displaymath}r_i(\underline{x}) = b_i x_i\end{displaymath}

By VCG procedures, the clearing house (here the auctioneer) calculates a value $\omega^{\star}$ s.t. $\sum{r_i(\underline{x})}$ is maximized.

\begin{displaymath}\max_{\underline{x}}\;\sum{r_i(\underline{x})} = \sum_{i=1}^{N}b_ix_i = \max_{i}\;b_i = b_{max}\end{displaymath}


\begin{displaymath}G_i() = \max_{\omega}\sum_{j \neq i}r_j(\omega)\end{displaymath}

Thus, we can see that,

G_i() = \left\{\begin{array}{ll} b_{max} & \textrm{if $i$\ i...
b_{second-max} & \textrm{otherwise}\end{array}\right.\end{displaymath}

Now, it can be easily seen that,

P_i(\omega^{\star}) = \left\{\begin{array}{ll} b_{max} & \te...
...the highest bidder}\\
0 & \textrm{otherwise}\end{array}\right.\end{displaymath}

So, the payment by the $i^{th}$ bidder to the auctioneer is given by,

\textrm{Payment} = G_i() - P_i()
=\left\{\begin{array}{ll} ...
...ghest$}\\ b_{second-max} & \textrm{otherwise}\end{array}\right.\end{displaymath}

i.e. the payment is $0$ if $x_i = 0$ and $b_{second-max}$ if $x_i = 1$.

Thus, we see that the VCG procedure correctly predicts that a single item auction will work as per Second Price auction procedure in that the highest bidder will get the item at the price of the second highest bidders value.

Mayank Bansal 2002-09-21