Convex Optimization and Applications:
Convex optimization has emerged as useful tool for applications that include data analysis and model fitting, resource allocation, engineering design, network design and optimization, finance, and control and signal processing. We start with an overview of optimization in general, focussing on convex optimization in particular. We then cover constructive convex analysis and disciplined convex programming, the basis for several software packages for convex optimization, including CVX and CVXPY. Finally, we address several applications in finance, data fitting, and advertising. Based in part on joint work with Steven Diamond.