Fall 2016

40.316 Algorithmic Game Theory - Engineering Systems and Design (ESD) - Graduate

This is a graduate level course in Algorithmic Game Theory which aims at providing the fundamental concepts of non-cooperative game theory, at exploring its connections to computational issues, and at showing a broad spectrum of applications in different fields. The topics to be covered in this course include strategic-form games, Nash equilibria (and variants), price of anarchy, auctions, and learning.

Summer 2016

40.316 Game Theory - Engineering Systems and Design (ESD)
Co-taught with Lingjie Duan

The course will provide a consistent framework for game-theoretic concepts, some of which have already been informally presented to the students in other courses. The course will cover the basic concepts in game theory, allowing the students to use strategic models in their capstone research.

Summer 2015, Summer 2016


The main objective of the subject is to provide firm foundations of calculus.

Spring 2013

CS 8803: Advanced Topics in Algorithmic Game Theory
Co-taught with Jugal Garg and Ruta Mehta

A research oriented course focusing on the intersection of computer science and game theory. During the first half of the course, the participants will be exposed to key ideas and results from algorithmic game theory. In the second part we will be exploring research tangents, looking into open questions and working on formulating novel problems.

Spring 2012

Discrete Fourier Analysis and Applications
Co-taught with Elena Grigorescu, Will Perkins and Lev Reyzin

Discrete fourier analysis provides a set of techniques that have found wide applicability in mathematics and computer science. The underlying insight is that the projection of functions onto the Fourier basis can often provide the right angle in analyzing properties of various mathematical objects, such as boolean functions, graphs, PRGs, and sets of integers.