COL866: Special Topics in Algorithms, Fall Semester 2023

Computational Social Choice

How to make group decisions, and what's computation got to do with it.

Instructor: Rohit Vaish ()


Course Information

What this course is about

This course will explore the mathematical foundations of social choice or collective decision-making problems. These are problems that involve making a group decision based on the preferences of individuals. Such problems arise in a variety of settings; for example, when a group of friends want to decide how to fairly split the rent for their shared apartment or a shared cab ride, or in high-stakes scenarios such as political elections, matching applicants with jobs, matching organ donors with patients, fairly dividing an inheritance, the list goes on.

We will use tools and techniques from theoretical computer science, economic theory, and artificial intelligence to design and analyze algorithms for collective decision-making problems. The narrative will center around economic issues such as fairness, efficiency, and incentives and how they interact with computation.

Who is this course aimed at

Students interested in research on algorithmic aspects of economics and game theory should find the course relevant.

Prerequisites

This is a theoretical course that will require mathematical maturity (in particular, the ability to understand and write formal mathematical proofs) and a strong grasp of algorithms and computational complexity (in particular, concepts such as linear programming duality, greedy algorithms, NP-completeness). The relevant prerequisites at IIT Delhi are COL202 (Discrete Mathematical Structures) and COL351 (Analysis and Design of Algorithms). The course does not require any background in economics. Please get in touch with Rohit before the start of the course if you have any questions about the prerequisites.

Reference text

Frequent references will be Handbook of Computational Social Choice (available in IITD library), Trends in Computational Social Choice (available in IITD library), and Online and Matching-Based Market Design (password:OMBMD_CUP), although individual lectures will refer to different books and papers that will be shared in the table below.


Admin

Lecture timings+venue

Tue+Fri 3:30-5PM IST, Venue LH 606.
Announcements will be made on the Microsoft Teams channel.

Office hours

By email.

Evaluation policy

The evaluation will be based on four assignments (10% each), in-class quizzes (30%), and a research project (30%). Depending on the class size, it may be possible to do the assignments and project in groups. For quizzes, the three worst scores will be dropped.

For the project, you will be expected to read a paper (or a set of closely related papers); a suggestive list is here. The deliverables will include a presentation and a report. There will also be a mid-term project update meeting.

Your final presentation and report should clearly convey the problem studied by the paper(s), the status of prior work, the main contribution of the paper(s) and why you think it is novel and interesting, as well as directions for future research. There will be a significant weightage for new observations and insights, so you are strongly encouraged to present those as well.

How to register

Send an email to Rohit with information about your prior coursework and relevant research experience.

Date Topic References
Part I: Matching
Lecture 1
July 25 (Tue)
The Stable Matching Problem
Introduction to the course and basics of the stable matching problem.
Lecture 2
July 28 (Fri)
Structure of Stable Matchings
The lattice of stable matchings, and the story of consensus and conflict.
Lecture 3
Aug 01 (Tue)
Manipulation in Stable Matching Problem
The conflict between stability and truthfulness (and some workarounds).
Lecture 4
Aug 04 (Fri)
Fairness in Stable Matching Problem
Using linear programming to find a median stable matching.
Aug 08 (Tue)
No lecture
Lecture 5
Aug 11 (Fri)
Many-To-One Stable Matchings
Reduction to canonical one-to-one problem, Rural hospitals theorem, and manipulation via capacity modification.
Assignment 1
PDF, .tex file, and solutions.
  • Announced: Aug 12 (Sat)
  • Due: Aug 21 (Mon)
Lecture 6
Aug 18 (Fri)
House Allocation and Kidney Exchange
Top-trading cycle algorithm and its application to kidney exchange.
Part II: Fair Division
Aug 19 (Sat)
Friday timetable
No lecture
Aug 22 (Tue)
No lecture
Lecture 7
Aug 25 (Fri)
Cake Cutting
Algorithms for proportional and envy-free cake division.
Lecture 8
Aug 29 (Tue)
Fair Allocation of Indivisible Goods
Algorithms for achieving envy-freeness up to one good.
Assignment 2
PDF, .tex file, and solutions.
  • Announced: Aug 31 (Thurs)
  • Due: Sep 11 (Mon)
Lecture 9
Sep 01 (Fri)
Fairness and Efficiency
Simultaneously achieving approximate envy-freeness and Pareto optimality.
Lecture 10
Sep 05 (Tue)
Towards Stronger Fairness Guarantees
Achieving envy-freeness up to any good by discarding some of the resources.
Lecture 11
Sep 08 (Fri)
Mid-Term Project Presentations
Project Groups

Omkar Shitole
Dominant Resource Fairness: Fair Allocation of Multiple Resource Types

Vedant Mukesh Deo and Jatin Yadav
A Size-Popularity Tradeoff in the Stable Matching Problem

Divyansh Mittal and Vaibhav Agarwal
How to Cut a Cake Before the Party Ends

Era Sarda
Fair Division of a Graph

Tanish Agarwal and Utsav Krishna Jaiswal
Scarf’s Algorithm and Stable Marriages

Shivam Kanojia
Centralized Admissions for Engineering Colleges in India

Mayank Mangla and Ramanuj Goel
Fair Division of Time: Multi-Layered Cake Cutting
Lecture 12
Sep 19 (Tue)
Fair Allocation of Indivisible Chores
Approximately envy-free allocation of undesirable indivisible resources: Top-trading cycle strikes back!
Lecture 13
Sep 26 (Tue)
Rent Division
Using Sperner's lemma to achieve rental harmony.
Lecture 14
Sep 29 (Fri)
Fairness through Randomness
Finding a randomized allocation that satisfies best-of-both-worlds (i.e., ex-ante and ex-post) fairness.
Part III: Voting
Lecture 15
Oct 10 (Tue)
Voting Rules
Introduction to voting rules and their axiomatic properties.
Lecture 16
Oct 13 (Fri)
Manipulation in Voting
Gibbard-Satterthwaite and Arrow's theorems.
Oct 14 (Sat)
Friday timetable
No lecture
Assignment 3
PDF, .tex file, and solutions.
  • Announced: Oct 15 (Sun)
  • Due: Oct 26 (Thurs)
Lecture 17
Oct 17 (Tue)
Computational Barriers to Manipulation
Or why NP-hardness isn't always a bad thing.
Lecture 18
Oct 20 (Fri)
Voting with Structured Preferences
Circumventing impossibility results under single-peaked preferences.
Lecture 19
Oct 27 (Fri)
Rank Aggregation
Computational aspects of Kemeny rule.
Lecture 20
Oct 31 (Tue)
Distortion of Voting Rules
A quantitative approach to voting.
Part IV: Modern Paradigms
Lecture 21
Nov 03 (Fri)
Multiwinner Voting - I
Assignment 4
PDF, .tex file, and solutions.
  • Announced: Nov 03 (Fri)
  • Due: Nov 17 (Fri)
Nov 07 (Tue)
No lecture: Office hours
Lecture 22
Nov 10 (Fri)
Multiwinner Voting - II
Lecture 23
Nov 14 (Tue)
Final Project Presentations
Project Groups

Divyansh Mittal and Vaibhav Agarwal
How to Cut a Cake Before the Party Ends

Mayank Mangla and Ramanuj Goel
Fair Division of Time: Multi-Layered Cake Cutting

Shivam Kanojia
Centralized Admissions for Engineering Colleges in India

Lecture 24
Nov 17 (Fri)
Final Project Presentations
Project Groups

Vedant Mukesh Deo and Jatin Yadav
A Size-Popularity Tradeoff in the Stable Matching Problem

Tanish Agarwal and Utsav Krishna Jaiswal
Scarf’s Algorithm and Stable Marriages

Era Sarda
Fair Division of a Graph

Omkar Shitole
Dominant Resource Fairness: Fair Allocation of Multiple Resource Types

Project Suggestions
Voting
Matching
Fair Division