CS 269I: Incentives in Computer Science



Course Assistants:

Time/location (new room!): 10:30-11:50 AM Mon/Wed in room 128 of the Education building.

Piazza site: Here

Prerequisites: Mathematical maturity at the level of undergraduate algorithms (CS161). Programming maturity at the level of 106B/X.

Course Description: Many 21st-century computer science applications require the design of software or systems that interact with multiple self-interested participants. This course will provide students with the vocabulary and modeling tools to reason about such design problems. Emphasis will be on understanding basic economic and game theoretic concepts that are relevant across many application domains, and on case studies that demonstrate how to apply these concepts to real-world design problems. Topics include auction and contest design, equilibrium analysis, cryptocurrencies, design of networks and network protocols, matching markets, reputation systems, and social choice. Possible case studies include BGP routing, Bitcoin, eBay's reputation system, Facebook's advertising mechanism, Mechanical Turk, and dynamic pricing in Uber/Lyft.

General references: Twenty Lectures on Algorithmic Game Theory, Cambridge University Press, 2016. See also the Amazon page.

The following collection is older and targeted more to researchers than to students, but is still useful for several topics. We will also draw on the following books for some of the lectures.

Lecture notes


Tentative Syllabus (will likely change)

Detailed Lecture Schedule