CS 159: Data-Driven Algorithm Design
Spring 2020
What is Data-Driven Algorithm Design?
Over the past several years, machine learning is increasingly used to (semi-)automatically design algorithms for various optimization problems. Canonical examples include:
Learning a local-optimization procedure (faster than gradient descent) for continuous optimization.
Tuning the hyperparameters of complex solvers to get the best performance.
Many other topics are covered by this recent workshop.
Like all of machine learning, one requires data in order to learn well. There are two ways to obtain such data:
One can have pre-collected problem instances to learn from, and assume that future test instances are well-represented by the training instances.
One can learn "on-the-fly" on a new problem instance.
A mix of the two.
The goal of this course is to familiarize students how to use machine learning to aid in automated algorithm design. Students will read and discuss recent research papers, as well as conduct a research project.
Course Description
Research-oriented course. Students will present lectures and conduct a research project.
Lectures on Tu/Th 9:00am-10:25am (sometimes 9:00am-9:55am)
Via Zoom (will be recorded)
Limited lectures, more discussions
First lecture: 4/7/2020
Course Blog: (TBA)
Evaluation
Blog post: 20%
Due April 24th
Final Project (Report & Presentation): 80%
Proposal Due May 1st
Presentations on June 3rd-5th
Project Report Due
June 6th for groups containing graduate students or graduating seniors
June 13th for groups containing only non-graduating undergraduates
Prerequisites
CS 155 or CS 165 or Permission From Instructor.
Teaching Staff
Yisong Yue (yyue@caltech.edu) (Instructor)
Jialin Song (jssong@caltech.edu) (Primary TA)
Hao Liu (hliu3@caltech.edu) (Secondary TA)
Joe Marino (jmarino@caltech.edu) (Secondary TA)