Distributed Software Development: Self-interested Agents and Game Theory, Study notes of Software Engineering

This document from the university of san francisco explores the application of game theory in distributed software development, focusing on self-interested agents and their preferences. Agents are assumed to act rationally to maximize their utility, and techniques from game theory and economics are used to find optimal solutions. Topics such as preferences and utility, truth-telling as a dominant strategy, and nash equilibria, using examples and proofs to illustrate concepts.

Typology: Study notes

Pre 2010

Uploaded on 07/30/2009

koofers-user-lux
koofers-user-lux 🇺🇸

10 documents

1 / 39

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Distributed Software Development
Self-interested Agents
Chris Brooks
Department of Computer Science
University of San Francisco
Department of Computer Science University of San Francisco p. 1/??
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27

Partial preview of the text

Download Distributed Software Development: Self-interested Agents and Game Theory and more Study notes Software Engineering in PDF only on Docsity!

Distributed Software Development^ Self-interested Agents^ Chris BrooksDepartment of Computer ScienceUniversity of San Francisco

Department of Computer Science — University of San Francisco – p. 1/

23-2:^ Engineering systems vs Engineering agents^ •^ Recall that at the end of Thursday’s class, we were talkingabout ant algorithms.^ ◦^ By specifying a simple set of rules, we can achieveinteresting large-scale behavior.^ •^ Ant-type approaches lead us to think about how we can buildsystems that produce the effects we want.^ •^ “Given that agents will act in a particular way, how can weconstrain the environment to achieve a desirable outcome?”^ •^ This method of problem solving is best applied to problemsinvolving self-interested agents.

Department of Computer Science — University of San Francisco – p. 2/

23-4:^ Rationality and protocol design^ •^ By treating participants as rational agents, we can exploittechniques from game theory and economics.^ •^ Assume everyone will act to maximize their own payoff^ •^ How do we structure the rules of the game so that this behaviorleads to a desired outcome?^ •^ This approach is called

mechanism design.^ Department of Computer Science — University of San Francisco – p. 4/

23-5:^ Example: Clarke tax^ •^ Assume that we want to find the shortest path through a graph.^ •^ Each edge is associated with an agent.^ •^ Each edge has a privately known transmission cost.^ ◦^ Agents might choose to lie about their transmission cost.^ •^ How can we find the shortest path?

Department of Computer Science — University of San Francisco – p. 5/

23-7:^ Example^ •^ Assume each agent bids truthfully.^ •^ Agents A, B, and C are each paid 8 - (6 - 2) = 4^ ◦^ This is their contribution to the ’best solution’^ •^ Other agents are paid nothing.

Department of Computer Science — University of San Francisco – p. 7/

23-8:^ Example^ •^ Why is truth-telling a dominant strategy?^ ◦^ What if a underbids?^ •^ A bids 1: paid 8 - (5 - 1) = 4. No benefit.^ ◦^ What if A overbids?^ •^ A bids 3: paid 8 - (7 - 3) = 4. No benefit.^ •^ A bids 5. No longer on the shortest path, so A gets 0.^ ◦^ What if d underbids?^ •^ D bids 3: no change.^ •^ D bids 1: paid 6 - (5 - 1) = 2. But his cost is 4.^ ◦^ D overbids: no change.

Department of Computer Science — University of San Francisco – p. 8/

23-10:^ Solution concepts^ •^ There are a number of potential solution concepts we can use:^ ◦^ Social welfare - sum of all agent utility.^ ◦^ Pareto efficiency^ •^ Is there a solution that makes one agent better off withoutmaking anyone worse off?^ ◦^ Individual rationality^ •^ An agent who participates in the solution should be betteroff than if it hadn’t participated.^ ◦^ Stability^ •^ The mechanism should not be able to be manipulated byone or more agents.^ •^ It’s not usually possible to optimize all of these at the sametime.

Department of Computer Science — University of San Francisco – p. 10/

23-11:^ Stability^ •^ Ideally, we can design mechanisms with

dominant strategies ◦^ A dominant strategy is the best thing to do no matter whatany other agent does. ◦^ In the previous example, truth-telling was a dominantstrategy. ◦^ We would say that the mechanism is non-manipulable.(lying can’t break it.) • Unfortunately, many problems don’t have a dominant strategy. • Instead, the best thing for agent 1 to do depends on whatagents 2,3,4,... do.

Department of Computer Science — University of San Francisco – p. 11/

23-13:^ Nash equilibrium^ •^ If BM climbs the tree^ ◦^ BM gets 6 C, LM gets 4 C^ ◦^ LM eats some before BM gets down^ •^ If LM climbs the tree^ ◦^ BM gets 9 C, LM gets 1 C^ ◦^ BM eats almost all before LM gets down^ •^ If both climb the tree^ ◦^ BM gets 7 C, LM gets 3 C^ ◦^ BM hogs coconut^ •^ How should the monkeys each act so as to maximize their owncalorie gain?

Department of Computer Science — University of San Francisco – p. 13/

23-14:^ Nash equilibrium^ •^ Assume BM decides first^ ◦^ Two choices: wait or climb^ •^ LM has four choices:^ ◦^ Always wait, always climb, same as BM, opposite of BM.

Department of Computer Science — University of San Francisco – p. 14/

23-16:^ Nash equilibrium^ •^ Nash eqilibria are nice in systems with rational agents.^ •^ If I assume other agents are rational, then I can assume they’llplay a best response.^ •^ I only need to consider Nash equilibria.^ •^ They are^ efficient^ (in the Pareto sense).^ •^ Problems:^ ◦^ There can be many Nash equilibria. (the cake-cuttingproblem has an infinite number of Nash equilibria)^ ◦^ Some games have no Nash equilibrium.^ ◦^ There may be ways for groups of agents to cheat.

Department of Computer Science — University of San Francisco – p. 16/

23-17:^ Selecting between equilibria^ •^ Given that there are lots of possible Nash equilibria in aproblem, how does an agent choose a strategy?^ •^ In some cases, external forces are used to make oneequilibrium more attractive.^ ◦^ Government regulation, taxes or penalties^ •^ In other cases a natural

focal point^ exists. ◦ There is a solution that is attractive or sensible

outside the scope of the game.

Department of Computer Science — University of San Francisco – p. 17/

23-19:^ Auctions^ •^ An auction is a negotiation mechanism where:^ ◦^ The mechanism is well-specified (it runs according toexplicit rules)^ ◦^ The negotiation is mediated by an intermediary^ ◦^ Exchanges are market/currency-based^ •^ Agents place bids on items or collections of items.^ •^ An auctioneer determines how goods are allocated.^ •^ Requirements: the auction should be fair, efficient, easy to use,and computationally efficient.^ •^ We’ll need to trade these against each other.

Department of Computer Science — University of San Francisco – p. 19/

23-20:^ Auctions^ •^ Private-value auctions are easier to think about at first.^ •^ In this case, the value agent A places on a job has nothing todo with the value that agent B places on the object.^ ◦^ For example, an hour of computing time.^ •^ In common-value auctions, the value an agent places on anitem depends on how much others value it.^ ◦^ Example: art, collectibles, precious metals.

Department of Computer Science — University of San Francisco – p. 20/