1 / 49

Application of Formal Method on Game Mechanism Design

Application of Formal Method on Game Mechanism Design. Ye Fang, Swarat Chaudhuri , Moshe Vardi. Bid for an second-hand camera Sealed-bid auction What price will you give?. What are you considering when bidding? Rules? Other players? How much does it actually worth to you?.

kelton
Télécharger la présentation

Application of Formal Method on Game Mechanism Design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Application of Formal Method on Game Mechanism Design Ye Fang, SwaratChaudhuri, Moshe Vardi

  2. Bid for an second-hand camera • Sealed-bid auction What price will you give?

  3. What are you considering when bidding? • Rules? • Other players? • How much does it actually worth to you?

  4. Rule 1: Winner  highest bidder Price  highest bid • If you win, pay for (true value – your bid) • Otherwise pay for nothing How to win and make profit? Shade your true value just a little… bit.

  5. Rule 2: Winner  highest bidder Price  second highest bid How you bid here? en… If I have the highest bid • If my bid is not the highest I should gain as much as I can !! Just bid for your true value.

  6. In the view point of a designer, why all these matter? • Designers want a good rule • What can be a good rule? • Maximize auctioneer’s profit • Efficient allocation of good • Knowledge of how much the good worth to the bidders

  7. Given the players are self-interested (strategic), which means they want to achieve maximum utility (gain) • How can we come up with a GOOD rule?

  8. Manual Mechanism Design • How? • Traditionally, economists come up with some possible mechanism by intuition and prove the property. Magic ?!

  9. Example: Vickery Auction • sealed-bid auction • Highest bidder wins • Price paid for the second highest bid • Property of the rule • Force players to bid for their true value • Efficient Allocation

  10. What if there does not exist a rule? • Arrow impossibility theorem • If everyone prefers a to b, then a will has higher rank than b • Independence of preference • Social preference between a and b only depends on individuals preference of a and b Dictatorship

  11. Automating the Design Procedure Magic • Is there a systematic approach to generate the mechanism of desire property?

  12. Previous Work • “Automated Mechanism Design:ANew Application Area for Search Algorithms” by Tuomas, Sandholm. • “Application of Automated Mechanism Design”, Vincent Conitzer, TuomasSandholm. • “Computationally Feasible Automated Mechanism Design: General Approach and Case Studies∗”, MingyuGuo and Vincent Conitzer

  13. Previous work • Application of search algorithm • Mechanism function is a mapping Agents Type Space outcome space

  14. Previous work • The type space of an agent can be, in the case of auction, true evaluations and bids. • The approach is basically an guided online search with constrains and objectives. • The algorithm takes an instance of the program, output the result. • Not very rule like

  15. In the case of auction, • The type space will be agents’ bid and their true evaluation of the good. • Outcome space will be the winner and the price • Given an instance of the game with • p0(b0, v0),p1(b1,v1),p2(b2,v2) • => Winner is __ Price is__ RULE ?!

  16. Our Solution • Computer-aided programming • Computer-aided mechanism design • A mechanism is naturally a program

  17. Problem modeling first step of Automation • What we observed: Preference aggregation Decision making rule (Resource allocation)

  18. Our solution A collection of Preference input Decision making mechanism (Resource allocation) output

  19. Players/agents • Private field • true evaluation of the good • true preference profile over the candidates • utility function • bid • Rule • Outcome • Who is the winner • How much should each player pay

  20. Properties • Truth-revealing (players behavior) • Maximize profit (outcome) • No dictatorship (outcome) • Efficient allocation (outcome)

  21. Modeling language • agentTemplate

  22. Choice for mechanism • What can be a mechanism function for auction? • Winner = ? (winner’s id#) • Price = ? (constant, linear functions, polynomials, etc) • Let’s start simple: can represent constants Hard to solve for constrain solvers.

  23. Mechanism function • Assuming bids are sorted and winner is the highest bidder @ pre : { sorted(p, 1) } @ mechanism m[list[] p][tuple result]= real winner = p[0][0]; real price = 0; for i = 0 to N-1 do price = price + ? c * p[i][1]; end for tupleresult = Tuple(winner, price); end m

  24. Execution part

  25. A complete program program main [] = real N = 3; agent template mechanism function execution code end program main @ post : forall(i, 0, N), { a[i].uf(result, a[i].self, a[i].v) <= a[i].uf( m(InsertSorted(Tuple(a[i].self,a[i].v), setExclude(e,i), 1)), a[i].self, a[i].v) } @ B_-i (ai_id, vi)

  26. A typical program includes: • Agent Templates • Mechanism function • Execution code • Generate agents according to templates • Create input for mechanism function • Assumptions of inputs and outputs of program or functions

  27. What we are really solving? • If the mechanism function has missing constants, we will synthesize feasible ones. for i = 0 to N-1 do price = price + ? c * p[i][1]; end for to synthesize

  28. What we are really solving? • If the mechanism function is complete, it becomes a verification problem. to verify

  29. Translate program to formula • Let’s walk through an example • Three players Vickrey Auction • Desired Property formulated in logic expression: • For all Players, b_iv_i • ut(bid for any value) <= ut (bid for true value) • While keep all the others’ bid the same

  30. M(b_0, B_-i) • Assume b0>b1>b2 • ut_0 = v_0-price • M(v_0, B_-i) • Cases: • v0>b1>b2 => ut_0’ = v_0-price • b1>v0>b2 => ut_0’ = 0 • b1>b2>b0 => ut_0’ = 0

  31. ((((((b_2<=b_1) and (v_0<=b_2)) and (((v_0<=b_2)and (b_2<=b_1)))) implies • v_0-0.0-c_0*b_0-c_1*b_1-c_2*b_2<=0.0 • ((((b_1<=v_0) and (b_2<=b_1)) and (((b_2<=b_1)and (b_1<=v_0)))) implies • v_0-0.0-c_0*b_0-c_1*b_1-c_2*b_2<=v_0-0.0-c_0*v_0-c_1*b_1-c_2*b_2 • ((((b_2<=v_0) and (v_0<=b_1)) and (((b_2<=v_0)and (v_0<=b_1)))) implies • v_0-0.0-c_0*b_0-c_1*b_1-c_2*b_2<=0.0

  32. The output of the compiler will be formula of the form: • Exists ( Mechanism with missing constants C) • For all (possible inputs of the mechanism) • Phi(C, outcome) where Phi() is the desired property.  

  33. Difficulty of nonlinear arithmetic • Only support linear mechanism function • The formula is a booleancombination of linear inequalities. where each ci:

  34. if any of the combinations of ci is unsatisfiable. • Lazy evaluation • From single ci, to two ci, cj, to three ci, cj, ck, …

  35. Application of Farkas Lemma • is unsatisfiable if each di,j(I) is unsatifiable. • Each di,j(I) is a linear system that has no solution. b_x_2<=v_x_0 v_x_0<=b_x_1 b_x_2<=v_x_0 v_x_0-0.0-c_0*b_x_0-c_1*b_x_1-c_2*b_x_2<=0.

  36. Application of Farkas Lemma  • If the system has no solution.

  37. Application of Farkas Lemma • Then the original problem becomes:Exists(y, z),

  38. b_x_2<=v_x_0 v_x_0<=b_x_1 b_x_2<=v_x_0 v_x_0-0.0-c_0*b_x_0-c_1*b_x_1-c_2*b_x_2<=0.0 • Exists(y, z),

  39. Last Step • We feed the generated formula to z3 on the fly. • Program stops as long as we find a feasible solution.

  40. Experimental results • We have synthesized mechanism for vickery auction, position auction, multiple same good auction. • We have showed if a linear voting mechanism satisfies Pareto efficiency, Independent of irrelevant alternatives, the solver only able to give mechanisms resulting in dictatorship.

  41. What we have achieved • We have designed a DSL for preference aggregation games. • We have synthesized a sets of linear mechanism which are recorded in literature.

  42. Future work • Limitation of the solver • Currently, we are only able to verify or synthesize linear mechanism functions • We are only able to simulate games with less than ten agents • How can we prove the mechanism to work for N(infinite number of) players instead of an arbitrary number of players?

  43. What should a fair voting achieve? • If everyone prefers a to b, then a will has higher rank than b • Independence of preference • Social preference between a and b only depends on individuals preference of a and b • No dictator

  44. Let’s VOTE • If we use majority vote: • P1: • P2: • P3:

  45. Result: a> b> c> a ??

  46. Another problem in Voting • Say, an agent prefers • If he knows a will not win • How will he vote? b? • Strategic bidding

More Related