A number of applications (inverse problems, machine learning, computer vision, data analysis, scheduling, etc.) require optimization problems to be solved. The objective of this course is to introduce the student to computational methods for linear, network, integer, and nonlinear optimization. Topics include traditional algorithms (e.g., Newtonian methods, interior-point methods, dynamic programming) as well as heuristics. Students will formulate real-world problems as optimization models and be exposed to the theoretical foundations for developing algorithms used for large-scale problems.

Course prerequisites: 

Multivariate calculus, linear algebra. Some real analysis would be good but is not required; 625.414 (Linear Optimization) is not required.

Course notes: 

Due to overlap in much of the subject matter in 625.415 and 625.416, a student may not receive credit towards the M.S. or Post-Master's Certificate for both 625.415 and 625.416.

Course instructor: