Linear programming
The simplex algorithm
Sensitivity analysis and duality
Integer programming and its applications
Branch-and-bound and branch-and-cut algorithms
Basic notions and algorithms in non-linear programming
Convexity KKT Conditions and Optimality
Gradient- and Newton-based algorithms
Heuristics and metaheuristics