170 likes | 329 Views
CPS 296.2 Computational Game Theory and Mechanism Design. Instructor: Vincent Conitzer Assistant Professor of Computer Science Assistant Professor of Economics conitzer@cs.duke.edu Course web page: http://www.cs.duke.edu/courses/fall06/cps296.2/. What is game theory ?.
E N D
CPS 296.2Computational Game Theory and Mechanism Design Instructor: Vincent Conitzer Assistant Professor of Computer Science Assistant Professor of Economics conitzer@cs.duke.edu Course web page: http://www.cs.duke.edu/courses/fall06/cps296.2/
What is game theory? • Game theory studies settings where multiple parties (agents) each have • different preferences (utility functions), • different actions that they can take • Each agent’s utility (potentially) depends on all agents’ actions • What is optimal for one agent depends on what other agents do • Very circular! • Game theory studies how agents can rationally form beliefs over what other agents will do, and (hence) how agents should act • Useful for acting as well as predicting behavior of others
Penalty kick example probability .7 probability .3 action probability 1 Is this a “rational” outcome? If not, what is? action probability .6 probability .4
Where is game theory used? • Economics (& business) • Auctions, exchanges, price/quantity setting by firms, bargaining, funding public goods, … • Political science • Voting, candidate positioning, … • Biology • Stable proportions of species, sexes, behaviors, … • Philosophy • Conventions, ethics, … • And of course… Computer science! • Game playing programs, electronic marketplaces, networked systems, … • Computing the solutions that game theory prescribes
A brief history of game theory • Some isolated early instances of what we would now call game-theoretic reasoning • e.g. Haldegrave 1713, Cournot 1838 • von Neumann wrote a key paper in 1928 • 1944: Theory of Games and Economic Behavior by von Neumann and Morgenstern • 1950: Nash invents concept of Nash equilibrium • Game theory booms after this… • 1994: Harsanyi, Nash, and Selten win Nobel Prize in economics for game theory work • 2005: Aumann and Schelling win Nobel Prize in economics for game theory work
Game playing (& AI) perfect information games: no uncertainty about the state of the game (e.g. chess, Go) imperfect information games: uncertainty about the state of the game (e.g. poker) “nature” white 1 gets King 1 gets Queen Qa1-a8 Qa1-f6 player 1 player 1 black black bet stay bet stay Kf8-f7 Kf8-g7 Kf8-g8 Kf8-e8 player 2 player 2 black wins white wins draw draw call fold call fold call fold call fold • Optimal play: value of each node = value of optimal child for current player (backward induction, minimax) • For chess and Go, tree is too large • Use other techniques (heuristics, limited-depth search, alpha-beta, …) • Top computer programs (arguably) better than humans in chess, not yet in Go 2 1 1 1 -2 1 -1 1 • Player 2 cannot distinguish nodes connected by dotted lines • Backward induction fails; need more sophisticated game-theoretic techniques for optimal play • Small poker variants can be solved optimally • Humans still better than top computer programs at full-scale poker • AAAI-06 computer poker competition: top programs all use game-theoretic techniques
Trading agents • Idea: given appropriate (e.g. web-based) interfaces, software can automatically make buying and selling decisions, matching supply to demand • Note: optimal action depends on what other (software, human) trading agents do → game theory • Lot of automated trading in financial markets • Academic interest in financial markets too: e.g. Penn-Lehman Automated Trading Project • Academic competitions: TAC (Trading Agent Competition)
TAC Classic • Software travel agents put together travel packages for clients • Agents compete in markets for flights, hotels, entertainment • Goal is to maximize own clients’ utilities
TAC Supply Chain Management • Agents manage a computer assembly supply chain • Compete for components from suppliers as well as customers • Agents have limited-capacity assembly lines • Goal is to maximize amount of money in the bank
What is mechanism design? • In mechanism design, we get to design the game (or mechanism) • e.g. the rules of the auction, marketplace, election, … • Goal is to obtain good outcomes when agents behave strategically (game-theoretically) • Mechanism design often considered part of game theory • Sometimes called “inverse game theory” • In game theory the game is given and we have to figure out how to act • In mechanism design we know how we would like the agents to act and have to figure out the game • The mechanism-design part of this course will also consider non-strategic aspects of mechanisms • E.g. computational feasibility
Example: (single-item) auctions • Sealed-bid auction: every bidder submits bid in a sealed envelope • First-price sealed-bid auction: highest bid wins, pays amount of own bid • Second-price sealed-bid auction: highest bid wins, pays amount of second-highest bid bid 1: $10 first-price: bid 1 wins, pays $10 second-price: bid 1 wins, pays $5 bid 2: $5 bid 3: $1 0
Which auction generates more revenue? • Each bid depends on • bidder’s true valuation for the item (utility = valuation - payment), • bidder’s beliefs over what others will bid (→ game theory), • and... the auction mechanism used • In a first-price auction, it does not make sense to bid your true valuation • Even if you win, your utility will be 0… • In a second-price auction, (we will see later that) it always makes sense to bid your true valuation bid 1: $10 a likely outcome for the first-price mechanism a likely outcome for the second-price mechanism bid 1: $5 bid 2: $5 bid 2: $4 bid 3: $1 bid 3: $1 0 0 Are there other auctions that perform better? How do we know when we have found the best one?
Combinatorial auctions Simultaneously for sale: , , bid 1 v( ) = $500 bid 2 v( ) = $700 bid 3 v( ) = $300 used in truckload transportation, industrial procurement, radio spectrum allocation, …
Combinatorial auction problems • Winner determination problem • Deciding which bids win is (in general) a hard computational problem (NP-hard) • Preference elicitation (communication) problem • In general, each bidder may have a different value for each bundle • But it may be impractical to bid on every bundle (there are exponentially many bundles) • Mechanism design problem • How do we get the bidders to behave so that we get good outcomes? • These problems interact in nontrivial ways • E.g. limited computational or communication capacity limits mechanism design options
Voting over outcomes voting rule (mechanism) determines winner based on votes > > • Can vote over other things too • Where to go for dinner tonight, other joint plans, … • Many different rules exist for selecting the winner • Again, winner determination, elicitation, mechanism design problems > >
Routing & network design • Suppose that: • Units of traffic are infinitesimal, • A traffic unit can choose any path from source S to destination D, • A traffic unit’s cost is the sum of the costs of the edges it travels on, • A traffic unit (selfishly) tries to minimize its own cost, • Each edge’s cost c is a nondecreasing function of the total amount of traffic on it (congestion), • Total amount of traffic = 1 (by normalization) Braess’ Paradox(carelessly adding capacity can actually be hurtful!) A A c(x) = 1 c(x) = x c(x) = 1 c(x) = x S D c(x) = 0 S D c(x) = 1 c(x) = x c(x) = 1 c(x) = x B B Game-theoretically optimal behavior: ½ goes through A, ½ goes through B, everyone has cost 1.5 Game-theoretically optimal behavior: everyone goes through BA, everyone has cost 2!
Yet another TAC competition: CAT • Participants set rules for matching buyers and sellers, and charging commissions • Trading agents (buyers, sellers) coded up by organizers • Commissions must be reasonable to attract traders • First iteration of competition will be in 2007 • CAT = • 1. reverse of TAC • 2. catallactics = the science of exchanges