IntroductionThis Course
Examples
CS 886: Multiagent Systems
Kate Larson
Cheriton School of Computer ScienceUniversity of Waterloo
September 8, 2008
Kate Larson CS 886
IntroductionThis Course
Examples
Outline
1 IntroductionIntroductionTwo Communities
2 This Course
3 ExamplesSelfish RoutingLondon Bus System
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
Outline
1 IntroductionIntroductionTwo Communities
2 This Course
3 ExamplesSelfish RoutingLondon Bus System
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
Introduction
Kate LarsonFaculty Member in CSMember of the AI research group
Research Interests: Multiagent SystemsStrategic Reasoning
bounded rationality/limited resourcesargumentation
Electronic market design
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
Introduction
Focus of this course is self-interested Multiagent Systemsaka competitive Multiagent Systems
Study of autonomous agentsDiverging informationDiverging interests
IssuesCooperationCoordinationOvercoming self-interest of agents in order to achievesystem-wide goals
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
Introduction
Growth in settings where there are multiple self-interestedinteracting parties
NetworksElectronic marketsGame playing...
To act optimally, participants must take into account howother agents are going to actWe want to be able to
Understand the ways in which agents will interact andbehaveDesign systems so that agents behave the way we wouldlike
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
Introduction
Growth in settings where there are multiple self-interestedinteracting parties
NetworksElectronic marketsGame playing...
To act optimally, participants must take into account howother agents are going to actWe want to be able to
Understand the ways in which agents will interact andbehaveDesign systems so that agents behave the way we wouldlike
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
Introduction
Growth in settings where there are multiple self-interestedinteracting parties
NetworksElectronic marketsGame playing...
To act optimally, participants must take into account howother agents are going to actWe want to be able to
Understand the ways in which agents will interact andbehaveDesign systems so that agents behave the way we wouldlike
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
Outline
1 IntroductionIntroductionTwo Communities
2 This Course
3 ExamplesSelfish RoutingLondon Bus System
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
Two Communities
EconomicsTraditional emphasis ongame theoretic rationalityDescribing how agentsshould behaveMultiple self-interestedagents
Computer ScienceTraditional emphasis oncomputational andinformational constraintsBuilding agentsIndividual or cooperativeagents
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
New Research Problems
How do we use game theory and mechanism design incomputer science settings?How do we resolve conflicts between game-theoretic andcomputational constraints?Development of new theories and methodologies
Kate Larson CS 886
IntroductionThis Course
Examples
IntroductionTwo Communities
Explosion of Research
Explosion of research in the area (Algorithmic game theory,computational mechanism design, Distributed algorithmicmechanism design, computational game theory,...)
Papers appearing in AAAI, AAMAS, UAI, NIPS, PODC,SIGCOMM, INFOCOMM, SODA, STOC, FOCS, ...Papers by CS researchers appearing in Games andEconomic Behavior, Journal of Economic Theory,Econometrica,...Numerous workshops and meetings,...
Kate Larson CS 886
IntroductionThis Course
Examples
This Course
Introduction to game theory, social choice, mechanismdesignStudy how they are used in computer science (in particularin AI)Study computational issues that arise
Course structureIntroductory lecturesCurrent research papers
Kate Larson CS 886
IntroductionThis Course
Examples
This Course
Introduction to game theory, social choice, mechanismdesignStudy how they are used in computer science (in particularin AI)Study computational issues that arise
Course structureIntroductory lecturesCurrent research papers
Kate Larson CS 886
IntroductionThis Course
Examples
Prerequisites
No formal prerequisitesStudents should be comfortable with mathematical proofsSome familiarity with probabilityIdeally students will have an AI course but I can providebackground material when neededI will cover the game theory and mechanism designrequired
Kate Larson CS 886
IntroductionThis Course
Examples
Grading
2-3 assignments on game theory and mechanism design:10%In class presentation(s): 20%
Peer-reviewed
Class participation: 20%Research project: 50%
Kate Larson CS 886
IntroductionThis Course
Examples
Presentations
Every student is responsible for presenting a research paper inclass
Short survey + a critiqueEveryone in class will provide feedback on the presentationMarks given on coverage of material + organization +presentation
Kate Larson CS 886
IntroductionThis Course
Examples
Class Participation
You must participate!Before each class (before 6:00 am the day of thepresentation) you must submit a review of one of thepapers being discussed
What is the main contribution?Is it important? Why?What assumptions are made?What applications might arise from the results?How can it be extended?What was unclear?· · ·
Kate Larson CS 886
IntroductionThis Course
Examples
Projects
The goal of the project is to develop a deep understanding of atopic related to the course.
The topic is openTheoretical, experimental, in-depth literature review,...Can be related to your own researchIf you have trouble coming up with a topic, come and talk tome
Proposals due October 20Final projects due December 1st1
Students will present projects in class
1I will likely be flexible with this.Kate Larson CS 886
IntroductionThis Course
Examples
Projects
The goal of the project is to develop a deep understanding of atopic related to the course.
The topic is openTheoretical, experimental, in-depth literature review,...Can be related to your own researchIf you have trouble coming up with a topic, come and talk tome
Proposals due October 20Final projects due December 1st1
Students will present projects in class
1I will likely be flexible with this.Kate Larson CS 886
IntroductionThis Course
Examples
Projects
The goal of the project is to develop a deep understanding of atopic related to the course.
The topic is openTheoretical, experimental, in-depth literature review,...Can be related to your own researchIf you have trouble coming up with a topic, come and talk tome
Proposals due October 20Final projects due December 1st1
Students will present projects in class
1I will likely be flexible with this.Kate Larson CS 886
IntroductionThis Course
Examples
Projects
The goal of the project is to develop a deep understanding of atopic related to the course.
The topic is openTheoretical, experimental, in-depth literature review,...Can be related to your own researchIf you have trouble coming up with a topic, come and talk tome
Proposals due October 20Final projects due December 1st1
Students will present projects in class
1I will likely be flexible with this.Kate Larson CS 886
IntroductionThis Course
Examples
Projects
The goal of the project is to develop a deep understanding of atopic related to the course.
The topic is openTheoretical, experimental, in-depth literature review,...Can be related to your own researchIf you have trouble coming up with a topic, come and talk tome
Proposals due October 20Final projects due December 1st1
Students will present projects in class
1I will likely be flexible with this.Kate Larson CS 886
IntroductionThis Course
Examples
Other Information
Class times: Monday-Wednesday 10:00-11:30Office Hours: By appointment (just send me email or talkto me after class to set up an appointment)Course website
http://www.cs.uwaterloo.ca/~klarson/teaching/F08-886
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Outline
1 IntroductionIntroductionTwo Communities
2 This Course
3 ExamplesSelfish RoutingLondon Bus System
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Selfish RoutingWe want to find the least-cost route from S to T .Costs are private information – we do not know themWe do know that agents (nodes) are interested inmaximizing revenueHow can we use this to figure out the least-cost route?
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Outline
1 IntroductionIntroductionTwo Communities
2 This Course
3 ExamplesSelfish RoutingLondon Bus System
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
London Bus System2
5 million passengers daily7500 buses700 routesThe system has been privatized since 1997 by usingcompetitive tenderingIdea: Run an auction to allocate routes to companies
2As of April 2004Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Auction ProtocolLet G be set of all routes, I be the set of biddersAgent i submits bid vi(S) for all bundles S ⊆ GCompute allocation S∗ to maximize sum of reported bids
V ∗(I) = max(S1,...,Sn)
∑i
vi(Si)
Compute best allocation without each agent
V ∗(I \ i) = max(S1,...,Sn)
∑j 6=i
v∗j (Sj)
Allocate each agent S∗i , each agent pays
P(i) = v∗i (S∗
i )− [V ∗(I)− V ∗(I \ i)]
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Auction ProtocolLet G be set of all routes, I be the set of biddersAgent i submits bid vi(S) for all bundles S ⊆ GCompute allocation S∗ to maximize sum of reported bids
V ∗(I) = max(S1,...,Sn)
∑i
vi(Si)
Compute best allocation without each agent
V ∗(I \ i) = max(S1,...,Sn)
∑j 6=i
v∗j (Sj)
Allocate each agent S∗i , each agent pays
P(i) = v∗i (S∗
i )− [V ∗(I)− V ∗(I \ i)]
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Auction ProtocolLet G be set of all routes, I be the set of biddersAgent i submits bid vi(S) for all bundles S ⊆ GCompute allocation S∗ to maximize sum of reported bids
V ∗(I) = max(S1,...,Sn)
∑i
vi(Si)
Compute best allocation without each agent
V ∗(I \ i) = max(S1,...,Sn)
∑j 6=i
v∗j (Sj)
Allocate each agent S∗i , each agent pays
P(i) = v∗i (S∗
i )− [V ∗(I)− V ∗(I \ i)]
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Auction ProtocolLet G be set of all routes, I be the set of biddersAgent i submits bid vi(S) for all bundles S ⊆ GCompute allocation S∗ to maximize sum of reported bids
V ∗(I) = max(S1,...,Sn)
∑i
vi(Si)
Compute best allocation without each agent
V ∗(I \ i) = max(S1,...,Sn)
∑j 6=i
v∗j (Sj)
Allocate each agent S∗i , each agent pays
P(i) = v∗i (S∗
i )− [V ∗(I)− V ∗(I \ i)]
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
London Bus System
Mechanism: Generalized Vickrey AuctionSpecifies the rulesDescribes how outcome will be determined
StrategiesPolicies which specify what actions to takeAgents are self-interested and rational
GVA is efficient and strategy-proof
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Computational Issues
Winner determination problem: Select bids to maximizesum of reported values
Maximum weighted set packing (NP-hard)Solve this problem I + 1 times
Agent valuation problemCommunication complexity
Each agent has to communicate 2700 bids to the auctioneer
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Computational Issues
Winner determination problem: Select bids to maximizesum of reported values
Maximum weighted set packing (NP-hard)Solve this problem I + 1 times
Agent valuation problemCommunication complexity
Each agent has to communicate 2700 bids to the auctioneer
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Computational Issues
Winner determination problem: Select bids to maximizesum of reported values
Maximum weighted set packing (NP-hard)Solve this problem I + 1 times
Agent valuation problemCommunication complexity
Each agent has to communicate 2700 bids to the auctioneer
Kate Larson CS 886
IntroductionThis Course
Examples
Selfish RoutingLondon Bus System
Computational Issues
Winner determination problem: Select bids to maximizesum of reported values
Maximum weighted set packing (NP-hard)Solve this problem I + 1 times
Agent valuation problemCommunication complexity
Each agent has to communicate 2700 bids to the auctioneer
Kate Larson CS 886