Introduction. Mathematical Background, including convex sets and functions. Need for constrained methods in solving constrained problems. Unconstrained optimization: Optimality conditions, Line Search Methods, Quasi-Newton Methods, Trust Region Methods. Conjugate Gradient Methods. Least Squares Problems. Constrained Optimization: Optimality Conditions and Duality. Convex Programming Problem. Linear Programming Problem. Quadratic Programming. Dual Methods, Penalty and Barrier Methods, Interior Point Methods.