17
CPS 296.2 Computational Game Theory and Mechanism Design Instructor: Vincent Conitzer Assistant Professor of Computer Science Assistant Professor of Economics [email protected] Course web page: http://www.cs.duke.edu/courses/fall06/cps296.2/

CPS 296.2 Computational Game Theory and Mechanism Design

  • Upload
    ailish

  • View
    37

  • Download
    1

Embed Size (px)

DESCRIPTION

CPS 296.2 Computational Game Theory and Mechanism Design. Instructor: Vincent Conitzer Assistant Professor of Computer Science Assistant Professor of Economics [email protected] Course web page: http://www.cs.duke.edu/courses/fall06/cps296.2/. What is game theory ?. - PowerPoint PPT Presentation

Citation preview

Page 1: CPS 296.2 Computational Game Theory and Mechanism Design

CPS 296.2Computational Game Theory

and Mechanism Design

Instructor: Vincent Conitzer Assistant Professor of Computer Science

Assistant Professor of [email protected]

Course web page: http://www.cs.duke.edu/courses/fall06/cps296.2/

Page 2: CPS 296.2 Computational Game Theory and Mechanism Design

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

Page 3: CPS 296.2 Computational Game Theory and Mechanism Design

Penalty kick example

probability .7

probability .3

probability .6

probability .4

probability 1

Is this a “rational” outcome? If not, what

is?

action

action

Page 4: CPS 296.2 Computational Game Theory and Mechanism Design

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

Page 5: CPS 296.2 Computational Game Theory and Mechanism Design

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

Page 6: CPS 296.2 Computational Game Theory and Mechanism Design

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)

1 gets King 1 gets Queen

bet betstay stay

call fold call fold call fold call fold

“nature”

player 1player 1

player 2 player 2

white

black black

Qa1-a8 Qa1-f6

Kf8-f7 Kf8-g7 Kf8-g8 Kf8-e8

black wins white wins draw draw

2 1 1 1 -2 -11 1

• 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

• 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

Page 7: CPS 296.2 Computational Game Theory and Mechanism Design

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)

Page 8: CPS 296.2 Computational Game Theory and Mechanism Design

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

Page 9: CPS 296.2 Computational Game Theory and Mechanism Design

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

Page 10: CPS 296.2 Computational Game Theory and Mechanism Design

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

Page 11: CPS 296.2 Computational Game Theory and Mechanism Design

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

0

bid 1: $10

bid 2: $5

bid 3: $1

first-price: bid 1 wins, pays $10second-price: bid 1 wins, pays $5

Page 12: CPS 296.2 Computational Game Theory and Mechanism Design

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

0

bid 1: $10

bid 2: $5

bid 3: $1

Are there other auctions that perform better? How do we know when we have found the best one?

0

bid 1: $5

bid 2: $4

bid 3: $1

a likely outcome for the first-price mechanism

a likely outcome for the second-

price mechanism

Page 13: CPS 296.2 Computational Game Theory and Mechanism Design

Combinatorial auctions

v( ) = $500

v( ) = $700

v( ) = $300

Simultaneously for sale: , , bid 1

bid 2

bid 3

used in truckload transportation, industrial procurement, radio spectrum allocation, …

Page 14: CPS 296.2 Computational Game Theory and Mechanism Design

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

Page 15: CPS 296.2 Computational Game Theory and Mechanism Design

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

Page 16: CPS 296.2 Computational Game Theory and Mechanism Design

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)

S D

c(x) = x

c(x) = x

c(x) = 1

c(x) = 1

Game-theoretically optimal behavior: ½ goes through A, ½ goes through

B, everyone has cost 1.5

B

A

S D

c(x) = x

c(x) = x

c(x) = 1

c(x) = 1

Game-theoretically optimal behavior: everyone goes through BA, everyone

has cost 2!

B

A

c(x) = 0

Braess’ Paradox (carelessly adding capacity can actually be hurtful!)

Page 17: CPS 296.2 Computational Game Theory and Mechanism Design

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