Strategyproof Sharing of submodular costs: Budget Balance Vs. Efficiency Liad Blumrosen May 2001 Motivation U1 = 2 U2 = 2 U3 = 3 Welfare: M • Knows costs Cost( {1,2} ) = 3 1 2 3 X 2$ 1$ 0$ ui - Cost({1,2}) =2+2-3=1 Budget Balance: xi - Cost({1,2 }) =2+1-3=0 Lecture outline • Introduction – Budget Balance Vs. Efficiency • Suggested mechanisms – Marginal Cost – Shapley } • Multicast networks • Feasibilty of mechanisms in multicast networks • conclusions Game theory } cs The Model • N agents – Agent can either receive service or not (binary) • ui - willingness of agent i to pay for the service • C(S) - cost for providing the service for a set of users S The mechanism’s output: • qi - does agent i receive the service? – if qi = 1 she receives. if qi = 0, she doesn’t • xi - the payment of agent i (cost shares) Submodular cost function • We will deal with submodular cost functions: • C is submodular if S,T N C(T) - C(ST) C(ST) - C(S) T S • (In our model C is also non-decreasing and C() = 0) Mechanism’s desired properties • No Positive Transfers (NPT) – Cost shares (payments) are nonnegative: i xi 0 • Voluntary Participation (VP) – Welfare level (u - x) of no service at no cost (qi=0,xi=0) is guaranteed for truthful agents • Consumer Sovereignty (CS) – Each agent has ui guaranteeing getting the service (regardless of the other reported values u-i) Mechanism’s desired properties: Incentive Compatibility • Strategyproof mecahnsim – Telling the true ui is a dominant straegy for any agent • Group-strategyproof mechanism – No coalition of agents has an incentive to jointly misreport their true ui – Stronger form of Incentive Compatibility. Model’s desired properties (cont.) social welfare is not the sum of •The Budget Balance the –agent and doesn’t xi =surpluses, C(R) (when R is the receivers set) depend on payments (xi) • Efficiency – For any u, the mechanism should maximize the social welfare: W(N,u) = maxTN[uT -C(T)] (where uT = iRuj) • Remark: In our model the utilities are quasilinear (uiqi - xi) Model’s desired properties NPT VP CS strategy-proof Budget-Balance Efficiency Budget-balance and Efficiency are mutual exclusive !!! Model’s desired properties NPT VP CS strategy-proof Efficiency Marginal Cost Budget-Balance shapley Cost Sharing Methods • A Cost Sharing Method f allocates C(S) among the agents in S – fi(S) - is the payment of agent i when the receivers set is S – fi(S) = C(S) (budget-balance) • Cost Sharing Function is cross-monotonic if: ST, i S fi(S) fi(T) – Agent can’t pay more when receivers set expands Cost Sharing Methods (cont.) • Consider the following allocation algorithm that uses the Cost Sharing Method f • S0 = N • St+1 = { i | ui fi( St ) } (proceed untill St is unchanged) S*(f,u) is the final allocation • The mechanism that uses f with allocation S*(f,u) is denoted by M(f) Theorem 1 (without proof) • For any cross-monotonic function f, the mechanism M(f) is budget balanced, group strategy-proof and meets NPT,VP,CS. Conversely, for any mechanism M which is group strategy-proof, budget-balanced and meets NP,VP,CS, there is a cross monotonic cost sharing method f such that M(f) is welfare-equivalent to M Choosing cost sharing function • We saw that every cross-monotonic function defines a mechanism with the desired properties (except efficiency) – Which mechanism is the “best”? • We will choose the method f for which M(f) minimzes the maximal welfare loss: – (f) = supu[ bestWelfare(u) - welfareM(f)(u) ] – where: bestWelfare(u) = maxTN(uT - C(T)) welfareM(f)(u) = (Us*(f,u) - C(s*(f,u)) Shapley’s cost sharing method • Consider the following cost sharing function, based on Shapley Value: |T|!(|S| - |T| - 1)! [C(Ti) - C(T)] – f*i(S) = TS-i |S|! • Theorem 2: (without proof) Among all M(f) derived from crossmonotonic functions, M(f*) has the uniquely smallest maximal welfare loss – (f*) < (f) ff* Model’s desired properties NPT VP CS strategy-proof Efficiency Marginal Cost Budget-Balance shapley cross-monotonic Marginal Cost Mechanism • The welfare of coalition S is == maxT S ( UT - C(T) ) surplusi = uiq*w(S,u) x* i i • Coalition is called if ( w(N,u) -Sw(n - i,u) efficent ) us - C(S) = w(N,u) Marginal cost pricing mechanism: – The reciever set (q*) is the largest efficent coalition – The cost shares (payments) given by VCG: x*i = uiq*i - ( w(N,u) - w(n - i,u) ) marginal welfare of agent i Marginal Cost Mechanism • Theorem 3: If M is a strategyproof and efficient mechanism, meeting NPT, VP, then M is welfare equivalent to MC. Conversely, the MC mechanism meets NPT, VP (and CS), and is efficient and strategyproof • Efficient mechanism is mechanism that select efficient allocations (not necessarily the largest) for all profiles (u’s) • Welfare equivalent means that: u i uiqi(u) - xi(u) = uiq*i(u) - x*i(u) Marginal Cost Mechanism: proof • Let M be any strategyproof and efficient mechanism (also meets NPT,VP) – I’ll show that M is welfare equivalent to MC • strategyproofness + efficiency x(u) is: xi(u) = uiqi(u) - [ W(N,u) - hi(u-i) ] • I’ll prove the following: – hi(u-i) = W(N-i,u) (as in the MC mechanism) – if efficient set is not maximal, welfare equivalence maintains Marginal Cost Mechanism:proof • We know xi(u) = uiqi(u) - [ W(N,u) - hi(u-i) ] I’ll show hi(u-i) = W(N-i,u) • Consider arbitrary u-i • u0 - the completion of u-i by u0i = 0 – NPT, VP xi(u0) = 0 • xi(u0) = uiqi(u0) - [ W(N,u0) - hi(u-i) ] hi(u-i) = W(N,u0) = W(N - i,u0) = W(N - i,u) if S efficient, S-{i} also efficient: xi(u) = uiq [ -W(N,u) us - C(S) C(S-{i}) i(u)u-s-{i} W(N - i,u)] Marginal Cost Mechanism:proof • Now we know that M takes the same form as MC, except R (the receivers set) can be any efficient allocation – not necessarily the maximal efficient set • Lemma (technical, without proof): if any S,T are efficient, then so is ST – S is efficient if us - C(S) = W(N,u) ( = maxTN(uT - C(T) ) – consequence of submodularity of C • if S efficient, and S* is largest-efficient then S S* Marginal Cost Mechanism:proof • If iS*, in both M, MC: S* – qi(u) = 0 , xi(u) = 0 • If iS*S, in both M, MC: – qi(u) = 1, xi(u) = uiqi(u) - [ W(N,u) - W(N - i,u)] S • If iS* - S – W(N,u) = W(N-i,u) (S N is efficient) – In M: qi(u) = 0, xi(u) = 0 Agent i has welfare of: ui*qi - xi = 0 – In MC: qi(u) = 1, xi(u) = ui Agent i has welfare of: ui*qi - xi = 0 M and MC are welfare equivalent Marginal Cost Mechanism • Theorem 3: If M is a strategyproof and efficient mechanism, meeting NPT, VP, then M is welfare equivalent to MC. Conversely, the MC mechanism meets NPT, VP (and CS), and is efficient and strategyproof Marginal Cost Mechanism:proof • Strategypoofness and efficiency are known properties of the VCG mechanism. • NPT: W(N,u) = us* - C(S*) ui + us* - i - C(S* - i) ui + W(N-i, u) x*i(u) = uiqi(u) - [ W(N,u) - W(N - i,u)] ui - [ W(N,u) - W(N - i,u)] 0 • VP: welfarei = uiqi(u) - xi (u) = = uiqi(u) - uiqi(u) - [ W(N,u) - W(N - i,u)] 0 = = welfarei(qi=0, xi = 0 ) Marginal Cost Mechanism:proof • CS: lemma: If ui C( {i} ) then us{i} - C( s{i} ) us - C( s ) proof: (1) C(S{i})) + C(S{i}) C(S) - C({i}) (submodulaity) (2) C(S{i}) C(S) - C({i}) (iS, C() = 0) (3) us-C(S{i}) - C({i}) us -C(S) us{i} - C( s{i} ) = us + ui - C( s{i} ) us + C({i}) - C( s{i} ) us -C(S) for big enough ui ( C(i) ), any largest efficient set will contain i Marginal Cost Mechanism shapley marginal cost NPT VP CS (not needed) Incentive Compatibility group singelton Budget Balance X (never surplus) Efficiency X (minmax loss) Lecture outline • Introduction – Budget Balance Vs. Efficiency • Suggested mechanisms – Marginal Cost – Shapley } • Multicast networks • Feasibilty of mechanisms in multicast networks • conclusions Game theory } cs Multicast transmission 7 5 • Pick set of receivers 4 2 2 1 3 source 3 Multicast transmission • Pick set of receivers • create a tree connecting the receivers • multicast the movie on the tree. source Multicast transmission model • (N,L) - an undirected graph – N - the nodes in the network – L - links in network • P - user population (0 or more users in each node) • C(l) - cost of link lL –0, known to nodes on both ends • R - the receivers set • T(R) - tree connecting R – subtree of a given universal tree T(P) covering R !!! • C( T(R) ) = lT(R)C(l) (submodular) Computational model • An instance of this problem contains 3 parameters: – n - number of nodes in the multicast tree – p - number of users (population size) – m - total size of input : {C(l)}lL{ui}i P • Desired commnication-complexity properties: – – – – Total messages on links (ideally O(n)) Maximal number of messages on link (ideally O(1)) Limited maximal message size Local computation comlexity We will ignore these properties MC cost sharing feasibility • Theorem 4: MC cost sharing requires exactly two messages per link. Proof idea: There is an algorithm that computes the cost shares by performing one bottom-up traversal on tree, followed by one top-down traversal. Theorem 4: proof • W(u) : welfare from the subtree rooted at • W(u) = u + [ W(u) ] - c child() | W (u) 0 – child() is all the child nodes in the tree – u is the sum of the utilities of the user in – C the cost of the link between and its parent root C p() C Theorem 4: proof • Following is an algorithm for the implementation of MC in multicast network • The allocation (q {0,1}|P| ): qi(u) = 1 if W(u) 0 for all nodes on the path from user i to the root Else, qi(u) = 0. – if the welfare of any subtree on the way to the root is negative, no broadcast to this subtree ! Theorem 4: proof • How the algorithm uses 2 messages per link? – The W(u) can be computed by bottom-up traversal – The allocations can be computed by propagating qi(u) in a top-down traversal – Computing the cost shares will also be computed in the same top-down traversal Theorem 4: proof • Cost sharing (payments) according to the VCG formula: xi(u) = uiqi(u) - [ W(N,u) - W(N-i,u) ] – Recall that W(N,u) = maxTN[ uT - C( R(T) ) ] • How can we compute W(N-i,u) ? Theorem 4: proof yi(u) : • Case 1: min w(u) node on the path from i to the root If ui yi(u) – Receivers set stays the same when dropping i. Thus, W(N,u) - W(N-i,u) = ui xi(u) = ui - [W(N,u) - W(N-i,u)] = 0 • Case 2: If ui > yi(u) – Dropping user i results elmination of subtree with the total welfare yi(u) xi(u) = ui - [W(N,u) - W(N-i,u)] = ui - yi(u) Theorem 4: proof Propagate qi and yi (allocation and cost shares) calculate W(u) for each node total of exactly 2 messages per link Theorem 4: clarification • In our model the tree must be a subtree of a given universal tree T(P) • Is it computationally feasible, when we can select ANY subtree of the original network? • No ! The problem becomes NP-hard to approximate within ratio . – even if the original graph is bounded-degree Shapley’s cost sharing method • Reminder : Shapley’s mechanism is M(f*) when: |T|!(|S| - |T| - 1)! [C(Ti) - C(T)] – f*i(S) = TS-i |S|! Shapley cost sharing feasibility • Theorem 5: Shapley’s cost sharing requires, in the worst case, (n · p) message exchanges ((n2) when p=O(n) ) • What’s wrong with worst case of (n2) ? – Centralized approach’s worst-case is also (n2) – In our complexity model, centralized approach can be applied to any (polynomial) cost sharing mechanism – Thus, Shapley can be considered as with “maximal” communication complexity. – Shapley has no benefit for being distributed ! Conclusions NPT VP CS strategy-proof Efficiency Marginal Cost Exactly 2 messages per link ( total (n) ): FEASIBLE Budget-Balance shapley cross-monotonic (n2) msg exchanges: FEASIBILITY PROBLEMS Bibliography • Moulin H. and S. Shenker (1997). “Strategyproof Sharing of submodular costs: Budget Balance versus Efficiency” Economic Theory. http://www.aciri.org/Shenker/cost.ps • Feigenbaum J. Papadimitriou C. and Shenker S “Sharing the cost of multicast transmissions” group strategyproof • Group strategyproof – No coalition of agents has an incentive to jointly misreport their true ui • Formal defnition: – for a fixed T N, – for any u,u’ such that uj = u’j jT and allocations (q,x) and (q’,x’) repectively – if uiq’i - x’i uiqi - xi iT then all the inequalities are equalities. • Strategyproofness is when |T| = 1 group strategyproof • • • • Let’s see why MC is not group-strategyproof C(1)=C(2)=6 C(12)=8 u1 = u2 = 5 s*(u) = {1,2} x*1(u) = x*2(u) = 5 - (8 - 6) = 3 • But, agent 1 can change to u’1 = 7 her allocation stays the same x*2(u) decreases to 2 !!!