# Algorithmic Game Theory

Fall 2013
Professor: Aaron Roth
TA: Steven Wu
Time: Monday/Wednesday 3:00-4:30
Room: Towne 321

Overview: 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 you be as successful at betting on horse races as the best horse racing expert, without knowing anything about horse racing? How can we set prices so that all goods get sold, and everyone gets their favorite good?

Prerequisites: 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, problem sets, a midterm, and a final exam.

Office Hours and Discussion: Office Hours: Tuesday and Friday 4:00pm-5:00pm in GRW 565 (Steven) and Monday 4:30-5:30 in Levine 603 (Aaron)
We will be using Piazza to discuss class material and answer questions. The Piazza page for NETS 412 is piazza.com/upenn/fall2013/nets412. Students are encouraged to ask questions about the material on Piazza so that everyone can benefit and contribute to their answers.

Topics Covered:
1. Part 1: Game Theory and Game Dynamics
1. Quick introduction to game theory: Zero sum and general sum games, Minmax strategies, Nash equilibrium, correlated equilibrium.
2. Introduction to Linear Programming and LP duality. Linear programs as zero sum games.
3. Game Dynamics: Weighted Majority Algorithm
4. Game Dynamics: Bandit Algorithms
5. Game Dynamics: converging to Nash equilibrium in zero sum games; Game dynamics converging to correlated equilibrium in general sum games
6. Game Dynamics: Best Response Dynamics and Potential Games.
7. Price of anarchy and price of stability: Definition, routing games, hoteling games
8. More if time allows...
2. Part 2: Assignment Problems and Mechanism Design
1. Stable Matchings and the Deferred Acceptance Algorithm
2. Market Equilibrium and Gross Substitute Preferences
3. Auction basics: First price auctions, second price auctions, truthfulness
4. Maximizing welfare: The VCG Mechanism
5. Auctions and Approximation Algorithms
6. Combinatorial Auctions
7. Online Auctions
8. Maximizing revenue: Prior Free Mechanism Design
9. Online auctions for digital goods
10. More if time allows...

Problem Sets and Exams:
1. Problem set 1. Due Monday September 30.
2. Problem set 2. Due Monday October 14.
3. Practice Midterm. Real Midterm on Wednesday October 23.
4. Problem set 3. Due Monday November 4.
5. Problem set 4. Due Monday November 25.

Lectures:
• Lecture 1: Class Overview
• Lecture 2: Basic definitions. (A game, a best response, a dominant strategy, a dominated strategy, a dominant strategy equilibrium). Prisoners dilemma, and iterated elimination of dominated strategies. See AGT Chapter 1.
• Lecture 3: Basic definitions. (A pure strategy Nash equilibrium, a mixed strategy Nash equilibrium). Stated Nash's theorem. Battle of the Sexes, coordination and anti-coordination games. Defined congestion games. See AGT Chapter 1.
• Lecture 4: Congestion game examples (Traffic routing, network creation). Congestion games have pure strategy Nash equilibria and Best Response Dynamics converge. See Yishay Mansour's notes.
• Lecture 5: Fast convergence of best response dynamics to approximate equilibrium. Exact polynomial time computation of Nash equilibria in symmetric network routing games via reduction to min-cost-flow. Defined the complexity class PLS. See Yishay Mansour's notes and AGT Chapter 19.
• Lecture 6: Computing Pure Nash in congestion games is PLS complete. Weighted congestion games don't always have pure strategy Nash equilibria, but load balancing games on identical machines do. See Yishay Mansour's notes and AGT Chapter 19.
• Lecture 7: Best response dynamics converge iff a game has an ordinal potential function. Begin learning in games: halving algorithm and weighted majority algorithm. See AGT Chapter 4
• Lecture 8: Defined and analyzed the polynomial weights algorithm. Began zero sum games. See AGT Chapter 4
• Lecture 9: Zero sum games and the min-max theorem, via the polynomial weights algorithm. See AGT Chapter 4
• Lecture 10: Polynomial weights algorithm converges to Nash equilibrium in any n-player graphical separable zero sum game. See Appendix B4 of this paper.
• Lecture 11: Correlated equilibrium and coarse correlated equilibrium, characterizations in terms of regret. See AGT Chapters 1, 4.
• Lecture 12: An algorithm achieving diminishing "swap regret" (regret to all strategy modification rules), and hence converging quickly to correlated equilibrium in arbitrary games. See AGT Chapter 4.
• Lecture 13: Defined price of anarchy and price of stability. Proved that price of stability of the fair cost sharing game is H_n, and the price of anarchy is n. See AGT Chapters 17 and 19.
• Lecture 14: Smooth games, and bounding the price of anarchy over CCE. Example game: price of anarchy in linear congestion games is 2.5. See this paper. Last lecture on game dynamics -- Next, begin mechanism design.
• Lecture 15: Stable matchings.
• Lecture 16: Walrasian Equilibrium for agents with gross substitutes valuations. See this paper of Kelso and Crawford.
• Lecture 17: The Vickrey Auction (2nd price auction), the Groves Mechanism, and the VCG Auction. VCG is economically efficient (social welfare maximizing), dominant strategy truthful, individually rational, and no-deficit for any mechanism design problem.
• Lecture 18: Beyond social welfare: Monotone Mechanisms in single parameter domains. (See Hartline Chapter 2)
• Lecture 19: Approximation Algorithms and Auctions -- truthfulness via monotonicity. Knapsack Auctions.
• Lecture 20: Revenue Maximization: Profit Extractors. (See Hartline Chapter 6)
• Lecture 21: Revenue Maximization: Random Sampling Auctions. (See Hartline Chapter 6)
• Lecture 22: Revenue Maximization: Online Digital Goods Auctions. See this paper.
• Lecture 23: Higher Revenue via Differential Privacy. (See this survey).

Related Courses: