{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Contest with risk averse bidders and non-monetary effort" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we use a simple example where contestants are risk averse with respect to prize money. Put differently, the expected utility of a contestant with cost parameter $c_i$ when exerting effort $x_i$ is $p_1(x_i) u(V_1)+p_2(x_i) u(V_2)-c_i x_i$ where $p_j(x_i)$ is the probability of winning $j$'th prize when exertin effort $x_i$ (given the equilibrium strategies of the other contestants) and $u$ is a strictly increasing and concave Bernoulli utility function. The contestant is risk averse with respect to prize money because $u$ is concave.\n", "\n", "In this model, the costs of effort are non-monetary and certain. The only uncertain part is which prize (if any) the contestant wins. (If the cost of effort was monetary, we would have to use the utility function $p_1(x_i) u(V_1-c_i x_i)+p_2(x_i) u(V_2-c_i x_i)$ which would complicate the analysis).\n", "\n", "The model with non-monetary effort cost is relatively simple because the game of the contestants (for given prizes $V_1$ and $V_2$) is the same as in Moldovanu and Sella: Instead of $V_1$ we simply have to use $W_1=u(V_1)$ and instead of $V_2$ we use $W_2=u(V_2)$. The same analysis as in the paper gives the equilibrium strategies for the contestants $b(c) = A(c)W_1+B(c)W_2$ where $A(c)$ and $B(c)$ are as in the paper. The only small difference is in the designer's problem: The constraint that the total prize money equals 1 states $V_1+V_2=1$ which in terms of $W_j$ reads $u^{-1}(W_1)+u^{-1}(W_2)=1$. Hence, the constraint when optimizing over $W_1$ and $W_2$ is $W_2=u(1-u^{-1}(W_1))$.\n", "\n", "The code below computes the optimal first and second prizes if cost parameters are iid uniformly distributed between 0.5 and 1 and there are 3 contestants. Here we get an interior solution: the first prize is $\\approx 2/3$ and the second prize $\\approx 1/3$. The intuition is that giving more prize money to the good types (via a higher first prize) does not give a lot of additional utility to them (because $u$ is concave, i.e. the marginal utility is decreasing). However, the marginal utility of the second prize is rather high (with the square root utility below it is actually infinite at 0) and can therefore motivate contestants (in particular those with medium and high cost parameters) considerably. Note that the code below only allows for 2 prizes. You should be able to convince yourself that probably 3 unequal prizes are optimal in this example (I did not allow for a third prize in order to be able to use the same formulas for the agents' strategies that we had in the lecture)." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " \n", "Optimal first prize is 0.6719864163174155\n", "Optimal second prize is 0.3280135836825845\n" ] }, { "data": { "image/png": "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vvvOGOP9vEaArqeiosI8+uijplOnTiYyMtL079/f7Nmzx2mfqVOnmpCQkAa/4RYVFZnMzEwTHx9vYmJizLBhw8yhQ4d8WT5c1Nz57t69u7HZbJf9uf766319G2gid359X+r66683Y8eO9Wa5cJM7811aWmrmzp1rOnXqZCIiIszNN99sNm7c6Mvy4SJ35vvtt982P/7xj0379u0d8/3yyy/7sny46Ep/DtfNr7fzmmUMT4YHAAAAmooeaAAAAMAFBGgAAADABQRoAAAAwAUEaAAAAMAFBGgAAADABQRoAAAAwAUEaAAAAMAFBGgAAADABQRoAAAAwAUEaAAAAMAFBGgA8LEDBw4oLS1NMTExCgkJ0aeffqonn3xSNtu1/VtyQUGBbDab1q9f7+9SAMCrQv1dAAAEk6qqKqWnpysqKkrLly9XVFSUunXrJsuyPBqgP//8c23evFnTpk1T165dPXbeq7Esy2fXAgB/sYwxxt9FAECwyM3NVa9evfTKK69o2rRpjvGamhpVVVUpPDzcI9fZunWr7r33Xu3du1dDhgzxyDmborKyUmFhYQRpAC3atf33hQBwjTl16pQkqVWrVk7jNpvtquHZGKOKioomXccY47MQW11drQsXLkiSwsPDCc8AWjwCNAD4yLRp0zR06FBZlqX09HTZbDYNGzZMki7bA22z2fTwww/rtddeU+/evRUREaHdu3dLkl5//XX17dtXcXFxatWqlVJSUrRixQpJ0rp16zRhwgRJ0tChQ2Wz2RQSEqL333+/0dqmTp2q2NhYffXVVxo5cqRiYmKUmJio3/zmN0771fU5L126VH/605+UnJysiIgIff755w16oN977z3ZbLbL/iQlJTmd96233tKQIUMUExOjuLg4jRkzRn/729/c+K8NAN5DDzQA+MiDDz6ozp0765lnntHs2bN12223qUOHDpJqe4cvt3L7zjvvaPPmzXrooYfUrl07de/eXdnZ2frnf/5n3XHHHXruueck1fY8f/TRR/q3f/s3DRkyRA8//LBWrFihxx9/XDfeeKMkqVevXo3WZlmWampqdNddd2ngwIH6/e9/r127dumJJ55QdXW1nnzySaf9X331VVVUVGjmzJmy2+1q27atqqurnfbp1auXsrKynMbOnj2refPmOe5bkjZs2KCpU6fqrrvu0nPPPaeysjKtXLlSt99+uw4fPuzTHm4AaBIDAPCZvXv3GsuyzNatW53Gn3zySWOz2ZzGLMsyoaGh5osvvnAanzNnjmnduvUVr7NlyxZjs9nMe++916S6pk6damw2m5kzZ47T+JgxY0xERIQ5c+aMMcaY/Px8Y1mWad26tWOsTt1n69ata/Q6Y8aMMXFxcY57KikpMW3atDEPPvig037/93//Z1q3bm1mzpzZpPoBwJdo4QCAADZ06FDdcMMNTmOtW7dWaWmpo53Dk37xi184/ftDDz2kiooKZWdnO42np6erbdu2Lp376aef1s6dO7Vu3TrHPe3Zs0fnzp3TfffdpzNnzjh+LMtS//799Ze//MW9GwIAL6CFAwACWPfu3RuM/eu//qveeOMNjR49Wp06ddKdd96pCRMmaOTIkW5d63K9yT179pQk5efnX7WuK9m1a5eefvppLVy4UPfcc49j/OjRozLG6Mc//nGDYyzLavBlSwAIBARoAAhgkZGRDcbi4+OVk5Oj3bt366233tJbb72lNWvWaMqUKVqzZo3f6mrMV199pZ///OcaOXJkgy8l1tTUyLIsZWVlOfVF1wkN5Y8pAIGH35kA4BoUGhqqn/zkJ/rJT34iSZo1a5ZWrVqlRYsWKSkpqVmPkqupqdHf//53JScnO8Zyc3Mlub7iXOf8+fP66U9/qrZt2+q1115r8HmPHj1kjFF8fLzjiSQAEOjogQaAa8y3337bYOymm26SJMdzoqOjo2WMUVFRkUvnfuGFFxr8e3h4uIYPH96sWmfOnKkvv/xSb7755mXbMUaOHKm4uDj99re/VVVVVYPPv/nmm2ZdFwC8iRVoALjGTJ8+Xd9++62GDRumzp07Kz8/Xy+88IJuueUWx6PqUlNTFRISoiVLlqioqEh2u13Dhw9Xu3btGj2v3W7Xrl27NHXqVPXv3187d+7UW2+9pccee0zXXXedy3Xu2LFDGzZsUHp6unJycpSTk+P4LCYmRuPGjVNsbKxWrlypBx54QH369NF9992n+Ph4/eMf/9COHTs0ePBgPf/8867/RwIALyJAA4CPNdZecel4Y8+Gnjx5slatWqWVK1eqqKhIHTt21KRJk/TEE0849unQoYNeeukl/e53v9P06dNVXV2tv/zlL1d8rXdoaKh27dqlBx98UI8++qhiY2P15JNPatGiRU2q69LPvvnmG1mWpa1bt2rr1q1O+3Xr1k3jxo2TJE2aNEmJiYl69tln9Yc//EEVFRVKTEzU7bff7vS6cwAIFJYxxvi7CACAf02bNk1bt27Vd9995+9SACDg0QMNAAAAuIAADQAAALiAAA0AkNR4bzYAwBk90AAAAIALWIEGAAAAXECABgAAAFxAgAYAAABcQIAGAAAAXECABgAAAFxAgAYAAABcQIAGAAAAXECABgAAAFzw/8mHIriL1YiiAAAAAElFTkSuQmCC", "text/plain": [ "PyPlot.Figure(PyObject )" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "1-element Array{Any,1}:\n", " PyObject " ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#load plotting package\n", "using PyPlot\n", "#load optimization package\n", "using Optim\n", "\n", "#########Setting up the primitives of the model#############\n", "\n", "#lower bound type distribution\n", "const m = 0.5\n", "\n", "#number of contestants\n", "const k = 3\n", "\n", "#cdf of type distribution; here uniform\n", "function F(a::Float64)\n", " if m<= a<= 1.0\n", " return (a-m)/(1.0-m)\n", " elseif a (1-F(a))^(k-2) * f(a)/a,c,1)[1] #\"quadgk\" integrates the function (1st argument) using the 2nd and 3rd argument as boundaries\n", "B(c) = (k-1)*quadgk(a-> (1-F(a))^(k-3) * ((k-1)*F(a)-1) * f(a)/a,c,1)[1]\n", "\n", "b(W1,W2,c) = A(c)*W1 + B(c)*W2\n", "\n", "####### Designer's problem ########\n", "#this function returns the expected effort of a participant multiplied with -1 (as the optimization procedure below searches for the minimum)\n", "function minusobjective(W1::Float64)\n", " function wrapped_objective(c::Float64)\n", " return b(W1,u(1.0-uinv(W1)),c)*f(c) #note that W2 = u(1.0-uinv(W1)) by the constraint V1+V2=1\n", " end\n", " return (-1.0)*quadgk(wrapped_objective,m,1)[1]\n", "end\n", "\n", "#result to optimization problem (minimizes \"minusobjective\" with W1 between u(0.5) and u(1.0); note that V1 cannot be less than 0.5)\n", "r = optimize(minusobjective,u(0.5),u(1.0))\n", "\n", "println(\" \")\n", "println(\"Optimal first prize is \", uinv(r.minimum))\n", "println(\"Optimal second prize is \", 1.0-uinv(r.minimum))\n", "\n", "#for plotting: returns average effort of a contestant if first prize is V1\n", "function plotobjective(V1::Float64)\n", " return (-1.0)*minusobjective(u(V1))\n", "end\n", "function plotobjective(V1::FloatRange{Float64})\n", " return [(-1.0)*minusobjective(u(v)) for v in V1]\n", "end\n", "\n", "fig, ax = subplots()\n", "ax[:set_xlabel](\"first prize\")\n", "ax[:set_ylabel](\"expected effort\")\n", "ax[:plot](0.0:0.01:1.0,plotobjective(0.0:0.01:1.0),\"b-\",linewidth=2,alpha=0.5)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Can we say in general when multiple prizes are optimal in this model? It turns out we can! \n", "Let's again concentrate on 2 prizes and let us check when it is optimal to have the second prize greater than 0. The expected effort of a participant is \n", "\n", "$$\\int_m^1\\left(W_1 A(c)+u(1-u^{-1}(W_1)) B(c)\\right)\\,f(c) \\,dc$$\n", "\n", "where we use the constraint $W_2 = u(1-u^{-1}(W_1))$ which states that the two prizes have to add up to 1. Maximizing this expression over $W_1$ leads to the first order condition\n", "\n", "$$\\int_m^1\\left( A(c)- u'(1-u^{-1}(W_1))*u^{-1}{ }'(W_1)* B(c)\\right)\\,f(c) \\,dc\\quad\\square\\quad 0$$\n", "\n", "where the square denotes equality or inequality depending whether the solution is interior or a boundary solution; that is, the square is = if $V_1$ is interior, it is >= if $V_1$ equals 1 and it is <= if $V_1$ equals 1/2. This can be rewritten as\n", "\n", "$$\\frac{\\int_m^1 A(c)f(c)\\,dc}{\\int_m^1 B(c)f(c)\\,dc}\\quad \\square \\quad u'(1-u^{-1}(W_1))*u^{-1}{ }'(W_1).$$\n", "\n", "The fraction on the left hand side is a constant -- call it $LHS$ -- that can readily be calculated form the primitives of the model (it does not depend on the prizes). If $V_1=1$, then $W_1=u(1)$ and the right hand side becomes $RHS_1 = u'(0)*u^{-1}{ }'(u(1))=u'(0)/u'(1)$. If $RHS_1$ exceeds $LHS$, then we can conclude that $V_1$ has to be less than 1 (as the first order condition cannot be satisfied for $V_1=1$). \n", "\n", "*Result 1: If* \n", "$$u'(0)/u'(1)>\\frac{\\int_m^1 A(c)f(c)\\,dc}{\\int_m^1 B(c)f(c)\\,dc},$$\n", "*then the optimal first prize is interior.*\n", "\n", "With the square root utility function, which has $u'(0)=\\infty$, this is obviously the case.\n", "\n", "Can we find a condition that rules out that two equal prizes are optimal? Take $V_1=0.5$ which implies $W_1=u(1/2)$. The right hand side of the rewritten first order conditions becomes $RHS_{0.5}=u'(1/2)*u^{-1}{}'(u(1/2))=u'(1/2)/u'(1/2)=1$. This yields the next result.\n", "\n", "*Result 2: If *\n", "$$ \\frac{\\int_m^1 A(c)f(c)\\,dc}{\\int_m^1 B(c)f(c)\\,dc}>1,$$\n", "*then $V_1>1/2$.*\n", "\n", "With our square root utility function it is easy to check that the condition of result 2 is satisfied:" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "2.048654292692943" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "((quadgk(c->A(c)*f(c),m,1)[1])^2) / ((quadgk(c->B(c)*f(c),m,1)[1])^2 )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In fact, we could have solved for the optimal first prize (in the two prizes case) in our example above by using the first order condition above (with \"=\" as we now established that the solution is interior). Note that \n", "$u'(1-u^{-1}(W_1))*u^{-1}{ }'(W_1)=\\frac{W_1}{\\sqrt{1-W_1^2}}$ with the square root utility function which means that the first order condition can be written as \n", "$$\\frac{\\int_m^1 A(c)f(c)\\,dc}{\\int_m^1 B(c)f(c)\\,dc}=\\frac{W_1}{\\sqrt{1-W_1^2}}$$\n", "which can be rearranged to yield\n", "$$W_1=\\sqrt{\\frac{\\left(\\int_m^1 A(c)f(c)\\,dc\\right)^2}{\\left(\\int_m^1 A(c)f(c)\\,dc\\right)^2+\\left(\\int_m^1 B(c)f(c)\\,dc\\right)^2}}.$$\n", "As $V_1=u^{-1}(W_1)=W^2_1$, we then get\n", "$$V_1=\\frac{\\left(\\int_m^1 A(c)f(c)\\,dc\\right)^2}{\\left(\\int_m^1 A(c)f(c)\\,dc\\right)^2+\\left(\\int_m^1 B(c)f(c)\\,dc\\right)^2}.$$\n", "Indeed this gives the same result that we obtained above:" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "0.6719864228630928" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(quadgk(c->A(c)*f(c),m,1)[1])^2 / ((quadgk(c->B(c)*f(c),m,1)[1])^2+(quadgk(c->A(c)*f(c),m,1)[1])^2 )" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Julia 0.4.5", "language": "julia", "name": "julia-0.4" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "0.4.5" } }, "nbformat": 4, "nbformat_minor": 0 }