Professor: Aaron Roth
TAs: Matthew Joseph
, James Park
Title: Tuesday/Thursday 3:00-4:30
Room: Moore 216
: In this course, we
will take an algorithmic perspective on problems in game theory. We
will consider questions such as: how should an auction for scarce goods
be structured if the seller wishes to maximize his revenue? How badly
will traffic be snarled if drivers each selfishly try to minimize their
commute time, compared to if a benevolent dictator directed traffic?
How can couples be paired so that no two couples wish to swap partners
in hindsight? How can we find kidney-exchange cycles to incentivize people to participate in the exchange, without using money? How can you be as successful at betting on horse races as
the best horse racing expert, without knowing anything about horse
How can we set prices so that all goods get sold, and everyone
gets their favorite good?
: This will be a
mathematically rigorous theory
course for advanced undergraduates. Students should have taken, or be
taking concurrently a course in algorithms (such as CIS 320), be
mathematically mature, and be familiar with big-O notation. Prior
coursework in game theory is helpful, but not necessary. Everything
will be presented from first principles.
Goals and Grading
: The goal of
this course is to give students a rigorous introduction to game theory
from a computer science perspective, and to prepare students to think
about economic and algorithmic interactions from the perspective of
incentives. Grading will be based on participation (5%), problem sets (45%), a
midterm (20%), and a final exam (30%).
: There is no required textbook. A recommended textbook is Twenty Lectures on Algorithmic Game Theory
. Another useful reference is Algorithmic Game Theory
, for which you should be able to also find a PDF on the web.
Office Hours and Discussion
Office Hours: Professor Roth --- Tuesdays 4:30-5:30 in Levine 603. Matthew Joseph --- Wednesdays 11:00-12:00 in Levine 561. James Park --- Mondays 12:00-1:00 in 5th floor Levine bump space.
We will be using Piazza to discuss class material, answer questions, and make announcements. The Piazza page for NETS 412 is piazza.com/upenn/spring2017/nets412
Students are encouraged to ask questions about the material on Piazza so that everyone can benefit and contribute to their answers.
- Part 1: Game Theory and Game Dynamics
- Quick introduction to game theory: Zero sum and general sum games, Minmax strategies, Nash equilibrium, correlated equilibrium.
- Introduction to Linear Programming and LP duality. Linear programs as zero sum games.
- Game Dynamics: Weighted Majority Algorithm
- Game Dynamics: Bandit Algorithms
Dynamics: converging to Nash equilibrium in zero sum games; Game
dynamics converging to correlated equilibrium in general sum games
- Game Dynamics: Best Response Dynamics and Potential Games.
- Price of anarchy and price of stability: Definition, routing games, hoteling games
- More if time allows...
- Part 2: Assignment Problems and Mechanism Design
- Stable Matchings and the Deferred Acceptance Algorithm
- Market Equilibrium and Gross Substitute Preferences
- Auction basics: First price auctions, second price auctions, truthfulness
- Maximizing welfare: The VCG Mechanism
- Auctions and Approximation Algorithms
- Combinatorial Auctions
- Online Auctions
- Maximizing revenue: Prior Free Mechanism Design
- Online auctions for digital goods
- More if time allows...