Maximization and minimization of functions of finitely many variables subject to constraints. Basic problem types and examples of applications; linear, convex, smooth, and nonsmooth programming. Optimality conditions. Saddlepoints and dual problems. Penalties, decomposition. Overview of computational approaches. Prerequisite: linear algebra and advanced calculus. Offered: jointly with IND E 515/MATH 515.