Instructor Insights

Course Overview

This page focuses on the course 18.S096 Topics in Mathematics of Data Science as it was taught by Dr. Afonso Bandeira in Fall 2015.

This is a mostly self-contained research-oriented course designed for undergraduate students (but also extremely welcoming to graduate students) with an interest in doing research in theoretical aspects of algorithms that aim to extract information from data. These often lie in overlaps of two or more of the following: Mathematics, Applied Mathematics, Computer Science, Electrical Engineering, Statistics, and/or Operations Research.

Course Outcomes

Course Goals for Students

  • Complete research in theoretical aspects of algorithms that aim to extract information from data
  • Try to make partial progress on (or completely solve) an open problem in this domain
  • Complete a research-oriented final project

Instructor Insights

"When working on an open problem, it is common to get stuck, multiple times. Having that one idea that allows you to move forward after being stuck is a great feeling and one of the main things that makes thinking about open problems so much fun!"
— Dr. Afonso Bandeira

Below, Dr. Afonso Bandeira describes various aspects of how he taught 18.S096 Topics in Mathematics of Data Science.

Three Strategies for Solving Problems in Mathematics

There are two natural strategies for solving problems in Mathematics (and other fields). One might be passionate about a specific open problem and try to learn as many techniques as possible to try to solve it, or one might be passionate about a specific technique or tool and try to use it to attack many different problems. Another approach is to keep learning both new tools and new problems to help maximize the chances of finding “tool-problem” pairs where the tool is useful for the problem. Indeed, if one has one problem and 99 tools, there are 99 chances to find a good pair. The same is true of 99 problems and one tool. However, with 50 problems and 50 tools, there are 50^2=2500 chances!

Helping Students Develop Problem-Solving Intuition

While lecturing (or helping students with homework), I made an effort to model intuition about solving problems or proving theorems, as opposed to simply showing the solution or proof. In class, I would often ask students for suggestions about how to proceed with a proof and tried to follow students’ suggestions regardless of whether this was the path I had in mind or if I knew whether it was going to work or not.  

Curriculum Information


Working knowledge of linear algebra and basic probability is required. Some familiarity with the basics of optimization and algorithms is also recommended.

Requirements Satisfied



Typically offered during the fall semester and January Independent Activities Period (IAP)


The students’ grades were based on the following activities:

  • 40% Problem Sets
  • 60% Final Project

Student Information


24 students

Breakdown by Year

1/2 undergraduates, 1/2 graduate students 

Breakdown by Major

Mostly Mathematics and Computer Science and Electrical Engineering majors, with some students from other majors

How Student Time Was Spent

During an average week, students were expected to spend 12 hours on the course, roughly divided as follows:


Met 2 times per week for 1.5 hours per session; 23 sessions total.

Out of Class

Out of class, students completed problems sets and worked on their projects.

Course Info

Learning Resource Types

assignment Problem Sets
notes Lecture Notes
co_present Instructor Insights