Introduction to the Language of Convex Optimization
Technical Report Identifier: EECS-2015-249
December 17, 2015
Abstract: These notes were written as part of a Masters Project to help introduce computer science undergraduates to the world of convex optimization. Convex Optimization is a relatively new field that has seen many applications, but the math required to understand it is rarely taught at the undergraduate level.
The notes are aimed at introducing the mathematics required of convex modeling, rather than algorithms. Convexity is a universal phenomenon in tractable problems, but recognizing it is hard.
The material is largely synthesized from 3 sources-- I make no claim to the novelty of content:
(1) Professor Boyd and Professor Vandenberghe's Convex Optimization(primary source for my first section on Convex Sets and Functions)
(2) Professor El Ghaoui's notes, hyper-textbook, and class for EE 227 A-B (primary source for my second section on Convex Optimization, and in particular the historical anecdotes )
(3) Professor Bartlett lecture notes from CS 289 (primary source for applications in machine learning)
These sources provide go into much greater detail than I have. In particular, I have italicized technical terms. If the reader is unfamiliar with them, it would behoove her or him to search the term to learn more about it.
In the first section I cover convex functions and convex sets. I also cover the spectral decomposition theorem and the separating hyperplane theorem. In the second section I cover convex optimization models, with applications in machine learning and Boolean optimization.