Optimization models: linear programming, nonlinear programming. Fundamentals of optimization: feasibility and optimality, derivatives and convexity, the general optimization algorithm, rate of convergence. Unconstrained optimization: optimality conditions, Newton's method for optimization, guaranteeing convergence, steepest descent, quasi-newton methods. Nonlinear programming: optimality conditions for constrained problems, optimality conditions for linear constraints, the Lagrange multipliers and the Lagrangian functions, optimality conditions for linear inequality constraints, optimality conditions for nonlinear constraints. Duality. Games and min-max duality. Lagrangian duality. Feasiblepoint methods : linear equality constraints. Penalty and Barrier methods. Semidefinite programming: applications to graph-theoretic problems (max-cut, maxbisection).