EECS Main > People > Faculty > Jason D. Hartline > Courses > EECS 510

EECS 395/495 - Algorithmic Mechanism Design
Spring 2010

Reference Text: Nisan, Roughgarden, Tardos, and Vazirani, Algorithmic Game Theory, Cambridge, 2007. [order from] [download pdf]
Lectures: Tuesday and Thursday, 10:30-11:50, Jacobs 166.
Instructor: Jason D. Hartline.
Announcement and Discussion Board: amd-10 [at]

Overview. This course combines game theory and economics with algorithms. Algorithms studies at simple processes for finding optimal or near optimal solutions to complicated optimization problems. The output of an algorithm is often an allocation of resources, e.g., which edges in a graph are in the shortest path or which tasks can be scheduled on a computer server. Game theory and economics study the outcome of systems of selfish agents, each optimizing their own objective. Algorithmic mechanism design combines the two fields and looks to find simple processes that result in good allocations of resources even when the input to these processes are provided by selfish agents who may try to game the system to get a more favorable outcome for themselves. These settings of selfish agents are especially relevant in computer networks such as the Internet. Unfortunately, optimal mechanisms are almost never simple enough to be implemented in practice, therefore, this course develops techniques for designing and analyzing simple mechanisms that approximate the optimal ones. From a computer science perspective, this course can be views as adding game theory to standard settings for approximation algorithms. From an economics perspective, this course can be viewed as adding approximation to standard settings in auction theory and mechanism design. Examples will be taken from eBay, Internet routing, Internet broadcast, FCC spectrum auction, and Internet advertising.

Prerequisites. Discrete math, probability, or statistics, e.g., EECS 310 (Mathematical Foundations of Computer Science). Algorithms, e.g., EECS 336 (Introduction to Algorithms), is recommended but not necessary.

Lecture Notes and Homework.

Course work. Students taking this course for credit are required to complete light problem-solving homework assignments, attend 5 research seminars on game theory (preferrably mechanism design), write a one paragraph summary of each (focus on the main results). Seminars can be found on the Theory Seminar calendar. In the second half of the course, the students should work on and complete a project. Project ideas include (a) writing a survey paper that combines and summarizes the results of several related papers, (b) combining the models of two unrelated papers and solving a research question related to the new model, (c) using auction theory to simplify and better explain the results of a CS paper that is not well grounded in auction theory. All homeworks and projects may be done in pairs. Each student in the paper is expected to contribute to every problem. There will be weekly reading assignments from research papers and surveys and students are expected to contribute to in class and online discussion of these papers.

Grading. 50% homeworks (including mini-reports on 5 game theory seminars), 40% project, and 10% classroom participation.


  • Week 1: Mechanism Design Overview
    • Topics: Mechanism Design, Approximation, Vickrey auction, Vickrey with reserve, path auctions, single-minded combinatorial auctions, computation in MD, approximation in MD, surplus, profit.
    • Reading: [1]
  • Week 2: Equilibrium
    • Topics: Bayes-Nash equilibirum, dominant strategy equilibrium, single-dimensional agents, revenue equivalence, revelation principle, incentive compatibility.
    • Homework: [hw 1]
  • Week 3: Computational Tractibility
    • Topics: single-dimensional mechanism design, Vickrey-Clarke-Groves (VCG) mechanism, single-minded combinatorial auctions, Lehmann-O'Callahan-Shoham (LOS) mechanism, approximation mechanisms.
    • Reading: [2] [3] [4] [5]
  • Week 4: Computational Tractibility (cont)
    • Topics: BIC blackbox reduction, computing payments.
    • Reading: [6] [7] [8] [9]
  • Week 5: Bayesian Profit Maximization
    • Topics: Myerson auction, virtual values, ironing.
    • Reading: [10]
  • Week 6: Bayesian Profit Approximation
    • Topics: Vickrey with reserve price approximation, prophet inequalities.
    • Reading: [11]
  • Week 7: Prior-free Profit Approximation
    • Topics: Bulow-Klemperer, single sample approximation, prior-free benchmarks, digital goods, random sampling auction, profit extraction.
    • Reading: [12] [13] [14]
  • Week 9: Online Mechanisms
    • Topics: online learning, multi-armed bandit, expert algorithm.
    • Reading: [15] [16]
  • Week 8: Frugality (prior-free profit approx without downward-closed)
    • Topics: spanning tree auctions, path auctions.
    • Reading: [17] [18] [19]
  • Week 10: Multi-dimensional Settings
    • Topics: VCG, random sampling auction, sequential posted pricing.
    • Reading: [13] [20]


  1. 2007 Nobel Prize in Economics [overview.pdf] [details.pdf]
  2. Nisan, Ronen, "Algorithmic Mechanism Design", 2001. [ps]
  3. Lehmann, O'Callaghan, and Shoham, "Truth Revelation in Approximately Efficient Combinatorial Auctions", 2002. [link]
  4. Briest, Krysta, Vocking, "Approximation techniques for utilitarian mechanism design", 2005. [link]
  5. Babaioff, Lavi, Pavlov, "Single-value combinatorial auctions and algorithmic implementation in undominated strategies", 2009. [link]
  6. Hartline, Lucier, "Bayesian Algorithmic Mechanism Design", 2010. [pdf]
  7. Babaioff, Blumrosen, Naor, Shapira, "Informational overhead of incentive compatibility", 2008. [link]
  8. Babaioff, Sharma, Slivkins, "Characterizing Truthful Multi-Armed Bandit Mechanisms", 2009. [link]
  9. Babaioff, Kleinberg, Slivkins, "Truthful Mechanisms with Implicit Payment Computation", 2010. [link]
  10. Myerson, "Optimal Auction Design", 1981. [link]
  11. Hartline, Roughgarden, "Simple versus Optimal Mechanisms", 2009. [pdf]
  12. Dhangwatnotai, Roughgarden, Yan, "Revenue Maximization with a Single Sample", 2010. [pdf]
  13. Hartline, Karlin, "Chapter 13: Profit Maximization in Mechanism Design", in Algorithmic Game Theory. 2007. [pdf]
  14. Hartline, Roughgarden, "Optimal Mechanism Design and Money Burning", 2008. [link]
  15. Parkes, "Chapter 16: Online Mechanisms", in Algorithmic Game Theory. 2007. [pdf]
  16. Blum, Hartline, "Near-optimal Online Auctions", 2005. [pdf]
  17. Hartline, "Lecture Notes on Frugality" [pdf]
  18. Karlin, Kempe, Tamir, "Beyond VCG: Frugality of Truthful Mechanisms", 2005. [pdf]
  19. Chen, Elkind, Gravin, Petrov, "Frugal Mechanism Design via Spectral Techniques", 2009. [link]
  20. Chawla, Hartline, Malec, Sivan, "Multi-parameter Mechanism Design and Sequential Posted Pricing", 2010. [pdf]

Project Schedule.

  • May 13th: proposals due.
  • June 3: rough drafts due.
  • June 10: final papers due.


Similar Courses.
Topics in Algorithmic Game Theory
(Roughgarden-Hartline, Stanford)
Algorithmic Research for E-Commerce
(Kao, Northwestern)
Algorithmic Aspects of Game Theory
(Papadimitriou, UC Berkeley)
Topics at the Interface of Computer Science and Economics
(Parkes, Harvard)
Economics and Computation
(Feigenbaum, Yale)
Algorithmic Game Theory
(Tardos, Cornell)
Foundations of Electronic Marketplaces
(Sandholm, CMU)
Electronic Market Design
(Larson, Waterloo)

Northwestern University Robert R. McCormick School of Engineering
and Applied Science Electrical Engineering and Computer Science Department