CS 3150 Topics in Algorithms

Spring 2008 topic is Algorithmic Game Theory




Kirk Pruhs                                         Christine Chung

Email: kirk@cs.pitt.edu                            chung@cs.pitt.edu
Phone : 412-624-8844 


Course Description

We will cover most of the very recent text (Fall 2007) on Algorithmic Game Theory by Nisan, Roughgarden, Tardos and Vazirani. After using the text, here is a review that I wrote at the request of Frits Spieksma.



The Amazon page contains a table of contents and an except. A rather nice forward was written by Christos Papadimitriou. This course is intended to be a broad introduction to algorithmic game theory that should be accessible to a wide range of students.

Course Format

The instructors will present the initial lectures. Each student will be expected to lead some lectures/discussions later in the semester covering some portion of the text.  One or two exercises may be assigned from each chapter to provide some practice using the concepts from the chapter.

Class Time and Location

Mondays and Wednesdays  (and maybe a rare Friday to make up for classes missed due to instructors' travels to academic conferences) from 1:00 to 2:15 in room 5313 of the Sennott Square building.

Tentative Schedule





Homework due at the start of next class. Occasionally I will ask someone to present the homework

Monday Jan 7

Definition: Strategic game, dominance, Pareto efficiency/optimality, pure Nash equilibrium, mixed Nash equilibrium

Chapter 1


Wednesday Jan 9

Lemke-Howson algorithm for general 2-person games

Chapter 3 is tough sledding

Insteead try good slides from class taught by Michael Lewiki

Homework: Consider the game in Lewiki's notes. Find a mixed Nash equilibrium for the game. Apply the Lemke-Howson algorithm to this Nash Equilibrium until you get to a new Nash Equilibrium. Your first step will be arbitrary. Show the path on the 3-D and 2-D spaces shown in the notes.

Monday Jan 14

Complexity of Nash Equilbrim:

Reduction to linear programming for zero-sum 2-person games

Sperner's lemma -> Brower Fixed point -> Existence of Nash

Chapter 2

Good notes from a class taught by Christos Papadimitriou


Wednesday Jan 16

NP-hardness of deciding if > 1 mixed Nash Equilibrium in a 2-person game

Paper by Conitzer and Sandholm

Slides for the paper

Slides revised by the students

Group Homework: Elaborate/Improve on the first page of these Slides to make the proof more complete/convincing/illuminating. In particular explain why:

  • A player won't play both a literal an its negation
  • Why a player won't play any literal with probability greater than 1/n where n is the number of variables
  • Why a player won't play a variable move/strategy
  • Why a player won't play a clause move/strategy if the formula is satisfiable
  • Why you need the default move

You may also change the instance constructed game (say by adding -infinity payoffs) if you think that that helps. Email me the slides, and I will post your revision. Don't get carried away, I am thinking that this should take 1 or at most 2 hours.


Monday Jan 21  No class MLK day




Wednesday Jan 23

Class cancelled




Monday Jan 28

Guest Lecture Katrina Ligett

Learning, Regret Minimization, and Equilibria

Chapter 4


Wednesday Jan 30


Resource Allocation Markets

  • s-t paths
  • s-ti paths

Section 5.13

Slides and Slides by Vijay Vazirani


Monday Feb 4

Fischer's Linear Market

Section 5.2 - 5.11

Slides by Amin Saberi

Group homework: Consider a market of goods and buyers where the utility only increases as the square root of the quantity of good received. That is, a buyer i gets utility u_{i,j} (x_{i,j})^{1/2} from x_{i,j} units of good j. It is probably more realistic to assume that utility is a concave function of quantity.

  • Write Eisenberg-Gale program for the market clearing problem for this market
  • apply the KKT conditions
  • Determine from the KKT conditions which conditions in Theorem 5.1 hold for this market

What, if anything, goes wrong if one tries to apply the algorithm in section 5.8 for Fischer's linear case to this market? Don't worry about running time, concentrate on correctness of the algorithm. If what goes wrong is minor, can it be easily fixed?



Wednesday Feb 6


Social Choice: Arrow's Impossibility Lemma and Gibbard-Satterthwaite

Section 9.2

Notes from class by Christos Papadimitriou

Group Homework: In the proof of Arrow's Impossibility Lemma that I did in class (basically the same proof as in the book) we consider the sequence F(pi_0) ... F(pi_n). Recall that F satisfied the conditions of unanimity and independence of irrelevant alternatives. It is easy to see that there must exist a k such that b > a if F(pi_j) for j < k and a > b in F(pi_k). That is the preference flips at k.  In my argument I assumed that it was then also the case that a > b in F(pi_j) for j > k. That is, once the preference flips, it has to stay flipped. Shenoda pointed out that it at least wasted obvious that this is true, that is, it is possible that the preference between a and b could flip several times. Your goal is to determine which of the following is true:

  • The preference can only flip once.
  • The preference can flip more than once, but the proof can still go through with at most minor modification.


Monday Feb 11

Christine will be speaking

Intro to Inefficiency of Equilibria

Sections 17.1-17.2.3


Wednesday Feb 13

Christine will be speaking

Routing Games

Sections 18.1-18.4


Monday Feb 18

Christine will be speaking

Network Formation Games: a local connection game

Sections 19-1-19.2


Wednesday Feb 20

Christine will be speaking

Network Formation Games: A global connection game and the Potential Function Method

Section 19.3

Group Homework: Problem 19.14

Monday Feb 25

Mechanisms with Money: VCG, Clark Pivot Rule

Sections 9.3-9.4

Group Homework: Consider the auction problem of selling k identical items to k different bidders. Is have the i^th highest bidder pay the bid of the (i+1)st highest bid truthful?

Wednesday Feb 27

House Allocation and Stable Marriage

Sections 10.3-10.4


Monday March 3

Combinatorial Auctions: The greedy algorithm for single minded bidders

Section 11.2


Wednesday March 5

Combinatorial Auctions:

Walrasian Equilibrium and the LP relaxation

Communication Complexity


Section 11.3

Section 11.6

Group Homework: Prove Lemma 11.13 using the KKT conditions (or LP duality)

Group Homework: Problem 11.9 from the text

Spring Break




Monday March 17

BGP Routing

Section  14.3

Group Homework: Can you come up with a precise formulation of Theorem 14.7 that is both interesting and (at least plausibly) true. The main issue in the proof that follows is "What is the domain of quantification when it is claimed that each AS gets their most valued route?"

Wednesday March 19

Cost Sharing

Chapter 15


Monday March 24

Cost Sharing

Chapter 15

Group Homework: Problem 15.2

Wednesday March 26

Cascading Behaviour in Networks

Chapter 24


Monday March 31


Lory's Presentation on Sponsored Search

Chapter 28

Talk Slides


Wednesday April 2

Shenoda's Presentation on Selfish Load Balancing

Chapter 20

Talk Slides


Monday April 7

No Class




Wednesday April 9

No Class




Monday April 14

Josh's Presentation on Reputation Systems

Chapter 27



Wednesday April 16

Rich's Presentation on Biological Applications of Games



Monday April 21

Tomas' Presentation on Bayesian Approaches

Paper by Jim Ratliff

Talk Slides


Wednesday April 23

Panickos' Presentation on Peer to Peer Applications of Games

Chapter 23